Part Number Hot Search : 
CAT24 001456 MUN5215 5C15S 7426PC RT2250B6 2SK1418 2SC18
Product Description
Full Text Search
 

To Download SX8635I05AWLTRT Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 1 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing g eneral d escription the sx8635 is an ultra low power, fully integrated 12-channel solution for capacitive touch-buttons and wheel with proximity detection applications. unlike many capacitive touch solutions, the sx8635 features dedicated capacitive sense inputs (that requires no external components) in addition to 8 general purpose i/o ports (gpio). each gpio is typically configured as led driver with independent pwm source for enhanced lighting control such as intensity and fading. the sx8635 includes a capacitive 10 bit adc analog interface with automatic compensation up to 100pf. the high resolution capacitive sensing supports a wide variety of touch pad sizes and shapes and allows capacitive buttons to be created using thick overlay materials (up to 5mm) for an extremely robust and esd immune system design. the sx8635 incorporates a versatile firmware that was specially designed to simplify capacitive touch solution design and offers reduced time-to-market. integrated multi-time programmable memory provides the ultimate flexibility to modify key firmware parameters (gain, threshold, scan period, auto offset compensation? ) in the field without the need for new firmware development. the sx8635 supports the 400 khz i2c serial bus data protocol and includes a field programmable slave address. the tiny 5mm x 5mm footprint makes it an ideal solution for portable, battery powered applications where power and density are at a premium. t ypical a pplication circuit p r o x i m i t y k ey p roduct f eatures ? complete twelve sensors capacitive touch controller for buttons and wheel ? pre-configured for 6 buttons and a wheel ? 8 led drivers with individual intensity, fading control and autolight mode ? 256 steps pwm linear and logarithmic control ? proximity sensing up to several centimetres ? high resolution capacitive sensing ? up to 100pf of offset capacitance compensation at full sensitivity ? capable of sensing through overlay materials up to 5mm thick ? extremely low power optimized for portable application ? 8ua (typ) in sleep mode ? 80ua (typ) in doze mode (scanning period 195ms) ? 220ua (typ) in active mode (scanning period 30ms) ? programmable scanning period from 15ms to 1500ms ? auto offset compensation ? eliminates false triggers due to environmental factors (temperature, humidity) ? initiated on power-up and configurable intervals ? multi-time in-field programmable firmware parameters for ultimate flexibility ? on-chip user programmable memory for fast, self contained start-up ? "smart" wake-up sequence for easy activation from doze ? no external components per sensor input ? internal clock requires no external components ? differential sensor sampling for reduced emi ? 400 khz fast-mode i2c interface with interrupt ? -40c to +85c operation a pplications ? notebook/netbook/portable/handheld computers ? cell phones, pdas ? consumer products, instrumentation, automotive ? mechanical button replacement o rdering i nformation part number temperature range package SX8635I05AWLTRT 1 -40c to +85c lead free mlpq-w32 1 3000 units/reel * this device is rohs/weee compliant and halogen free
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 2 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing table of contents g eneral d escription ........................................................................................................................ 1 t ypical a pplication circuit ............................................................................................................ 1 k ey p roduct f eatures ..................................................................................................................... 1 a pplications ............................................................................................................................... ........ 1 o rdering i nformation ...................................................................................................................... 1 1 g eneral d escription ............................................................................................................... 4 1.1 pin diagram 4 1.2 marking information 4 1.3 pin description 5 1.4 simplified block diagram 6 1.5 acronyms 6 2 e lectrical c haracteristics ................................................................................................. 7 2.1 absolute maximum ratings 7 2.2 recommended operating conditions 7 2.3 thermal characteristics 7 2.4 electrical specifications 8 3 f unctional description ........................................................................................................ 10 3.1 quickstart application 10 3.2 introduction 10 3.2.1 general 10 3.2.2 gpios 11 3.2.3 parameters 11 3.2.4 configuration 11 3.3 scan period 12 3.4 operation modes 12 3.5 sensors on the pcb 14 3.6 button and wheel information 15 3.6.1 button information 15 3.6.2 wheel information 15 3.7 analog sensing interface 17 3.8 offset compensation 18 3.9 processing 19 3.10 configuration 19 3.11 power management 21 3.12 clock circuitry 21 3.13 i2c interface 21 3.14 reset 22 3.14.1 power up 22 3.14.2 resetb 22 3.14.3 software reset 23 3.15 interrupt 24 3.15.1 power up 24 3.15.2 assertion 24 3.15.3 clearing 24
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 3 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.15.4 example 25 3.16 general purpose input and outputs 25 3.16.1 introduction and definitions 25 3.16.2 gpi 26 3.16.3 gpp 26 3.16.4 gpo 27 3.16.5 intensity index vs pwm pulse width 30 3.17 smart wake up 31 4 p in descriptions ..................................................................................................................... 32 4.1 introduction 32 4.2 asi pins 32 4.3 host interface pins 33 4.4 power management pins 36 4.5 general purpose io pins 37 5 d etailed c onfiguration descriptions .............................................................................. 38 5.1 introduction 38 5.2 general parameters 41 5.3 capacitive sensors parameters 42 5.4 button parameters 47 5.5 wheel parameters 51 5.6 mapping parameters 56 5.7 gpio parameters 59 6 i2c i nterface ........................................................................................................................... 63 6.1 i2c write 63 6.2 i2c read 64 6.3 i2c registers overview 65 6.4 status registers 66 6.5 control registers 69 6.6 spm gateway registers 71 6.6.1 spm write sequence 72 6.6.2 spm read sequence 73 6.7 nvm burn 74 7 a pplication i nformation ...................................................................................................... 75 7.1 typical application schematic 75 7.2 example of touch+proximity module 76 7.2.1 overview 76 7.2.2 operation 76 7.2.3 performance 76 7.2.4 schematics 77 7.2.5 layout 78 8 r eferences ............................................................................................................................. 79 9 p ackaging i nformation ........................................................................................................ 80 9.1 package outline drawing 80 9.2 land pattern 80
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 4 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 1 g eneral d escription 1.1 pin diagram sx8635 top view 1 2 3 4 5 6 7 8 24 23 22 21 20 19 18 17 9 10 11 12 13 14 15 16 25 26 27 28 29 30 31 32 bottom ground pad cap2 cap3 cap4 cap5 cap6 cap8 cap7 cap9 gnd gpio5 gpio4 gpio3 gpio2 gpio1 gnd gpio0 cap1 cap0 vana resetb gnd gpio7 vdig gpio6 cap10 cap11 cn cp vdd scl intb sda figure 1 pinout diagram 1.2 marking information fl25 yyww xxxxxx r05 yyww = date code xxxxxx = semtech lot number r05 = semtech code figure 2 marking information
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 5 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 1.3 pin description number name type description 1 cap2 analog capacitive sensor 2 2 cap3 analog capacitive sensor 3 3 cap4 analog capacitive sensor 4 4 cap5 analog capacitive sensor 5 5 cap6 analog capacitive sensor 6 6 cap7 analog capacitive sensor 7 7 cap8 analog capacitive sensor 8 8 cap9 analog capacitive sensor 9 9 cap10 analog capacitive sensor 10 10 cap11 analog capacitive sensor 11 11 cn analog integration capacitor, negative terminal (1nf between cn and cp) 12 cp analog integration capacitor, positive terminal (1nf between cn and cp) 13 vdd power main input power supply 14 intb digital output interrupt, active low, requires pull up resistor (on host or external) 15 scl digital input i2c clock, requires pull up resistor (on host or external) 16 sda digital input/output i2c data, requires pull up resistor (on host or external) 17 gpio0 digital input/output general purpose input/output 0 18 gpio1 digital input/output general purpose input/output 1 19 gnd ground ground 20 gpio2 digital input/output general purpose input/output 2 21 gpio3 digital input/output general purpose input/output 3 22 gpio4 digital input/output general purpose input/output 4 23 gpio5 digital input/output general purpose input/output 5 24 gnd ground ground 25 gpio6 digital input/output general purpose input/output 6 26 gpio7 digital input/output general purpose input/output 7 27 vdig analog digital core decoupling, connect to a 100nf decoupling capacitor 28 gnd ground ground 29 resetb digital input active low reset. connect to vdd if not used. 30 vana analog analog core decoupling, connect to a 100nf decoupling capacitor 31 cap0 analog capacitive sensor 0 32 cap1 analog capacitive sensor 1 bottom plate gnd ground exposed pad connect to ground table 1 pin description
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 6 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 1.4 simplified block diagram the simplified block diagram of the sx8635 is illustrated in figure 3. sx8635 cap2 cap3 cap4 cap5 cap6 cap8 cap7 cap9 gnd gpio5 gpio4 gpio3 gpio2 gpio1 gnd gpio0 cap1 cap0 vana resetb gnd gpio7 vdig gpio6 cap10 cap11 cn cp vdd scl intb sda analog sensor interface micro processor ram rom i2c gpio controller power management clock generation rc pwm led controller bottom plate nvm figure 3 simplified block diagram of the sx8635 1.5 acronyms asi analog sensor interface dcv digital compensation value gpi general purpose input gpo general purpose output gpp general purpose pwm mtp multiple time programmable nvm non volatile memory pwm pulse width modulation qsm quick start memory spm shadow parameter memory
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 7 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 2 e lectrical c haracteristics 2.1 absolute maximum ratings stresses above the values listed in ?absolute maximum ratings? may cause permanent damage to the device. this is a stress rating only and functional operation of the device at these, or any other conditions beyond the ?recommended operating conditions?, is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability . parameter symbol min. max. unit supply voltage vdd -0.5 3.9 v input voltage (non-supply pins) v in -0.5 3.9 v input current (non-supply pins) i in 10 ma operating junction temperature t jct 125 c reflow temperature t re 260 c storage temperature t stor -50 150 c esd hbm (human body model) (i) esd hbm 3 kv latchup (ii) i lu 100 ma table 2 absolute maximum ratings (i) tested to jedec standard jesd22-a114 (ii) tested to jedec standard jesd78 2.2 recommended operating conditions parameter symbol min. max. unit supply voltage vdd 2.7v 3.6 v supply voltage drop (iii, iv, v) vdd drop 100 mv supply voltage for nvm programming vdd 3.0v 3.6 v ambient temperature range t a -40 85 c table 3 recommended operating conditions (iii) performance for 2.6v < vdd < 2.7v might be degraded. (iv) operation is not guaranteed below 2.6v. should vdd briefly drop below this minimum value, then the sx8635 may require; - a hardware reset issued by the host using the resetb pin - a software reset issued by the host using the i2c interface (v) in the event the host processor is reset or undergoes a power off/on cycle, it is recommended that the host also resets the sx8635 and assures that parameters are re-written into the spm (should these differ to the parameters held in nvm). 2.3 thermal characteristics parameter symbol min. max. unit thermal resistance - junction to ambient (vi) ja 25 c/w table 4 thermal characteristics ( vi) static airflow
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 8 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 2.4 electrical specifications all values are valid within the operating conditions unless otherwise specified. parameter symbol conditions min. typ. max. unit current consumption active mode, average i op,active 30ms scan period, 12 sensors enabled, minimum sensitivity 220 300 ua doze mode, average i op,doze 195ms scan period, 12 sensors enabled, minimum sensitivity 80 110 ua sleep i op,sleep i2c and gpi listening, sensors disabled 8 17 ua gpio, set as input, resetb, scl, sda input logic high v ih 0.7*vdd vdd + 0.3v v input logic low v il vss applied to gnd pins vss - 0.3v 0.8 v input leakage current l i cmos input 1 ua pull up resistor r pu when enabled 660 k pull down resistor r pd when enabled 660 k gpio set as output, intb, sda output logic high v oh i oh <4ma vdd-0.4 v output logic low v ol i ol,gpio <12ma i ol,sda,intb <4ma 0.4 v start-up power up time t por time between rising edge vdd and rising intb 150 ms resetb pulse width t res 50 ns recommended external components capacitor between vdig, gnd c vdig type 0402, tolerance +/-50% 100 nf capacitor between vana, gnd c vana type 0402, tolerance +/-50% 100 nf capacitor between cp, cn c int type 0402, cog, tolerance +/-5% 1 nf capacitor between vdd, gnd c vdd type 0402, tolerance +/-50% 100 nf table 5 electrical specifications
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 9 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing parameter symbol conditions min. typ. max. unit i2c timing specifications (i) scl clock frequency f scl 400 khz scl low period t low 1.3 us scl high period t high 0.6 us data setup time t su;dat 100 ns data hold time t hd;dat 0 ns repeated start setup time t su;sta 0.6 us start condition hold time t hd;sta 0.6 us stop condition setup time t su;sto 0.6 us bus free time between stop and start t buf 500 us input glitch suppression t sp 50 ns table 6 i2c timing specification notes: (i) all timing specifications, figure 4 and figure 5, refer to voltage levels (v il , v ih , v ol ) defined in table 5. the interface complies with slave f/s mode as described by nxp: ?i2c-bus specification, rev. 03 - 19 june 2007? figure 4 i2c start and stop timing figure 5 i2c data timing
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 10 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3 f unctional description 3.1 quickstart application the sx8635 is preconfigured (quickstart application) for an application with 6 buttons, a wheel (consisting of 6 sensors) and 8 led drivers using logarithmic pwm fading. implementing a schematic based on figure 6 will be immediately operational after powering without programming the sx8635 (even without host). cap2 cap3 cap4 cap5 cap6 cap8 cap7 cap9 gnd gpio5 gpio4 gpio3 gpio2 gpio1 gnd gpio0 cap1 cap0 vana resetb gnd gpio7 vdig gpio6 cap10 cap11 cn cp vdd scl intb sda analog sensor interface micro processor ram rom nvm i2c gpio controller power management clock generation rc pwm led controller bottom plate d1 d0 d2 d3 d4 d5 d6 d7 d0 d1 d2 d3 d4 d5 d6 d7 sx8635 host figure 6 quickstart application touching the sensor on the cap0 pin will enable automatically the led connected to gpio0. when the cap0 sensor is released the led on gpio0 will slowly fade-out using smooth logarithmic fading. all other sensors (cap1 to cap5) have their own led associated on a gpio pin showing a touch or a release. the sensors on cap6 to cap11 are used in a wheel configuration. a moving finger on the wheel will enable the led on gpio6 or gpio7 indicating the finger rotation direction. the sensor detection and the led fading described above are operational without any host interaction. this is made possible using the sx8635 autolight feature described in the following sections. 3.2 introduction 3.2.1 general the sx8635 is intended to be used in applications which require capacitive sensors covered by isolating overlay material and which need to detect the proximity of a finger/hand though the air. a finger approaching the capacitive sensors will change the charge that can be loaded on the sensors. the sx8635 measures the change of charge and converts that into digital values (ticks). the larger the charge on the sensors, the larger the number of ticks will be. the charge to ticks conversion is done by the sx8635 analog sensor interface (asi). the ticks are further processed by the sx8635 and converted in a high level, easy to use information for the user?s host.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 11 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing the information between sx8635 and the user?s host is passed through the i2c interface with an additional interrupt signal indicating that the sx8635 has new information. for buttons this information is simply touched or released. 3.2.2 gpios a second path of feedback to the user is using general purpose input output (gpio) pins. the sx8635 offers eight individual configurable gpio pins. the gpio can e.g. be set as a led driver which slowly fade-in when a finger touches a button and slowly fade-out when the button is released. fading intensity variations can be logarithmic or linear. interval speed and initial and final light intensity can be selected by the user. the fading is done using a 256 steps pwm. the sx8635 has eight individual pwm generators, one for each gpio pin. the led fading can be initiated automatically by the sx8635 by setting the sx8635 autolight feature. a simple touch on a sensor and the corresponding led will fade-in without any host interaction over the i2c. in case the autolight feature is disabled then the host will decide to start a led fading-in period, simply by setting the gp0 pin to ?high? using one i2c command. the sx8635 will then slowly fade-in the led using the pwm autonomously. in case the host needs to have full control of the led intensity then the host can set the gpio in gpp mode. the host is then able to set the pwm pulse width freely at the expense of an increased i2c occupation. the gpios can be set further in the digital standard input mode (gpi). 3.2.3 parameters the sx8635 has many low level built-in, fixed algorithms and procedures. to allow a lot of freedom for the user and adapt the sx8635 for different applications these algorithms and procedures can be configured with a large set of parameters which will be described in the following sections. examples of parameters are which sensors are buttons or which sensors are parts of a wheel, which gpio is used for outputs or leds and which gpio is mapped to which button. sensitivity and detection thresholds of the sensors are part of these parameters. assuming that overlay material and sensors areas are identical then the sensitivities and thresholds will be the same for each sensor. in case sensors are not of the same size then sensitivities or thresholds might be chosen individually per sensor. so a smaller size sensor can have a larger sensitivity while a big size sensor may have the lower sensitivity. 3.2.4 configuration during a development phase the parameters can be determined and fine tuned by the users and downloaded over the i2c in a dynamic way. the parameter set can be downloaded over the i2c by the host each time the sx8635 boots up. this allows a flexible way of setting the parameters at the expense of i2c occupation. in case the parameters are frozen they can be programmed in multiple time programmable (mtp) non volatile memory (nvm) on the sx8635. the programming needs to be done once (over the i2c). the sx8635 will then boot up from the nvm and additional parameters from the host are not required anymore. in case the host desires to overwrite the boot-up nvm parameters (partly or even complete) this can be done by additional i2c communications.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 12 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.3 scan period the basic operation scan period of the sx8635 sensing interface can be split into three periods over time. in the first period (sensing) the sx8635 is sensing all enabled cap inputs, from cap0 towards cap11. in the second period (processing) the sx8635 processes the sensor data, verifies and updates the gpio and i2c status registers. in the third period (timer) the sx8635 is set in a low power mode and waits until a new cycle starts. figure 7 shows the different sx8635 periods over time. figure 7 scan period the scan period determines the minimum reaction time of the sx8635. the scan period can be configured by the host from 15ms to values larger than a second. the reaction time is defined as the interval between a touch on the sensor and the moment that the sx8635 generates the interrupt on the intb pin. the shorter the scan period the faster the reaction time will be. very low power consumption can be obtained by setting very long scan periods with the expense of having longer reaction times. important: all external events like gpio, i2c and intb are updated in the processing period, so once every scan period. if e.g. a gpi would change state directly after the processing period then this will be reported with a delay of one scan period later in time. 3.4 operation modes the sx8635 has 3 operation modes. the main difference is found in the reaction time (corresponding to the scan period) and power consumption. active mode offers fast scan periods. the typical reaction time is 30ms. all enabled sensors are scanned and information data is processed within this interval. doze mode increases the scan period time which increases the reaction time to 195ms typical and at the same time reduces the operating current. sleep mode turns the sx8635 off, except for the i2c and gpi peripheral, minimizing operating current while maintaining the power supplies. in sleep mode the sx8635 does not do any sensor scanning. the user can specify other scan periods for the active and doze mode and decide for other compromises between reaction time and power consumption. in most applications the reaction time needs to be fast when fingers are present, but can be slow when no person uses the application. in case the sx8635 is not used for a specific time it can go from active mode into doze mode and power will be saved. this time-out is determined by the passive timer which can be configured by the user or turned off if not required.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 13 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing to leave doze mode and enter active mode this can be done by a simple touch on any button. for some applications a single button touch might cause undesired wakening up and active mode would be entered too often. the sx8635 offers therefore a smart wake-up sequence feature in which the user needs to touch and release a correct sequence of buttons before active mode will be entered. this is explained in more detail in the wake-up sequence section. the host can decide to force the operating mode by issuing commands over the i2c (using register compopmode) and take fully control of the sx8635. the diagram in figure 8 shows the available operation modes and the possible transitions. figure 8 operation modes
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 14 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.5 sensors on the pcb the capacitive sensors are relatively simple copper areas on the pcb connected to the twelve sx8635 capacitive sensor input pins (cap0?cap11).the sensors are covered by isolating overlay material (typically 1mm...3mm). the area of a sensor is typically one square centimeter which corresponds about to the area of a finger touching the overlay material. the capacitive sensors can be setup as on/off buttons for either touch or proximity sensing (see example figure 9) or arranged in a wheel configuration (see example figure 10) for e.g. menu scrolling or volume control applications. figure 9 pcb top layer of three touch buttons sensors surrounded by a proximity sensor figure 10 pcb top layer of one wheel using six sensors (surrounded by ground plane) please refer to the layout guidelines application note [1], for more details.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 15 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.6 button and wheel information 3.6.1 button information the touch buttons have two simple states (see figure 11): on (touched by finger) and off (released and no finger press). figure 11 buttons a finger is detected as s oon as the number of ticks from the asi reaches a user-defined threshold plus a hysteresis. a release is detected if the ticks from the asi go below the threshold minus a hysteresis. the hysteresis around the threshold avoids rapid touch and release signaling during transients. buttons can also be used to do proximity sensing. the principle of proximity sensing operation is exactly the same as for touch buttons except that proximity sensing is done several centimeters above the overlay through the air. on state means that finger/hand is detected by the sensor and off state means the finger/hand is far from the sensor. 3.6.2 wheel information in case sensors are arranged in a wheel configuration the on, off information remains available as if it would be a single sensor button. figure 12 wheel on, off wherever the wheel is touched the information will be set to on. if no finger is present the wheel information will be off. due to the 2 dimensional character of the wheel more information can be derived by processing the ticks. during a touch a finger will influence most of the time the charge on one or two sensors but never all of the sensors at the same time. some sensor ticks will be larger than others based on the finger position. the processing algorithms can therefore determine where the finger is positioned on the wheel. interpolation between sensors increases the resolution beyond the number of sensors in the wheel. the interpolation can be done already on the pcb sensor structures (analog, like the wheel in figure 10) and as well by sx8635 digital processing of the ticks using center of gravity calculations. the position of the finger on the pcb structures varies between the minimum zero and a user defined maximum (figure 13).
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 16 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing ....x... position m i n m a x figure 13 wheel position the position belonging to the minimum and associated to a sensor is defined arbitrarily. the sx8635 defines the minimum position to the sensor with the lowest cap pin index. e.g. if cap0 is a button (or disabled) and cap1 to cap7 are the sensors of the wheel then the position ?zero? starts at cap1 and the maximum is found at cap7. in addition to the wheel position, the sx8635 allows to detect finger rotation. the rotation occurs if the finger position changes a certain step size between two succeeding scan periods. a very slow moving finger will not be considered as a rotation as the changing position will be minor. the sx8635 allows detecting a rotate clockwise (direction min to max) (see figure 14) and a rotate counter clockwise (direction max to min) (see figure 15). rotate clockwise figure 14 wheel rotate clockwise figure 15 wheel rotate counter clockwise
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 17 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.7 analog sensing interface the analog sensing interface (asi) converts the charge on the sensors into ticks which will be further digitally processed. the basic principle of the asi will be explained in this section. the asi consists of a multiplexer selecting the sensor, analog switches, a reference voltage, an adc sigma delta converter, an offset compensation dac and an external integration capacitor (see figure 16). switches cap2 cap9 cap10 cap11 cap1 cap0 analog multi- plexor offset compensation dac adc ticks (raw) compensation dcv asi processing cint voltage reference low pass ticks-diff ticks-ave figure 16 analog sensor interface to get the ticks representing the charge on a specific sensor the asi will execute several steps. the charge on a sensor cap (e.g. cap0) will be accumulated multiple times on the external integration capacitor, cint. this results in an increasing voltage on cint proportional to the capacitance on cap0. at this stage the offset compensation dac is enabled. the compensation dac generates a voltage proportional to an estimation of the external capacitance. the estimation is obtained by the offset compensation procedure executed e.g. at power-up. the difference between the dac output and the charge on cint is the desired signal. in the ideal case the difference of charge will be converted to zero ticks if no finger is present and the number of ticks becomes high in case a finger is present. the difference of charge on cint and the dac output will be transferred to the adc (sigma delta integrator). after the charge transfer to the adc the steps above will be repeated. the larger the number the cycles are repeated the larger the signal out of the adc with improved snr. the sensitivity is therefore directly related to the number of cycles. the sx8635 allows setting the sensitivity for each sensor individually in applications which have a variety of sensors sizes or different overlays or for fine-tuning performances. the optimal sensitivity is depending heavily on the final application. if the sensitivity is too low the ticks will not pass the thresholds and touch/proxim ity detection will not be possible. in case the sensitivity is set too large, some power will be wasted and false touch/proximity information may be output (ie for touch buttons => finger not touching yet, for proximity sensors => finger/hand not close enough). once the asi has finished the first sensor, the ticks are stored and the asi will start measuring the next sensor until all (enabled) sensors pins have been treated. in case some sensors are disabled then these result in lower power consumption simply because the asi is active for a shorter period and the following processing period will be shorter.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 18 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing the ticks from the asi will then be handled by the digital processing. 3.8 offset compensation the capacitance at the cap pins is determined by an intrinsic capacitance of the integrated circuit, the pcb traces, ground coupling and the sensor planes. this capacitance is relatively large and might become easily some tens of pf. this parasitic capacitance will vary only slowly over time due to environmental changes. a finger touch is in the order of one pf. if the finger approaches the sensor this occurs typically fast. the asi has the difficult task to detect and distinguish a small, fast changing capacitance, from a large, slow varying capacitance. this would require a very precise, high resolution adc and complicated, power consuming, digital processing. the sx8635 features a 16 bit dac which compensates for the large, slow varying capacitance already in front of the adc. in other words the adc converts only the desired small signal. in the ideal world the adc will put out zero ticks even if the external capacitance is as high as 100pf. at each power-up of the sx8635 the digital compensation values (dcv) are estimated by the digital processing algorithms. the algorithm will adjust the compensation valu es such that zero ticks will be generated by the adc. once the correct compensation values are found these will be stored and used to compensate each cap pin. if the sx8635 is shut down the compensation values will be lost. at a next power-up the procedure starts all over again. this assures that the sx8635 will operate under any condition. powering up at e.g. different temperatures will not change the performance of the sx8635 and the host does not have to do anything special. the dcvs do not need to be updated if the external conditions remain stable. however if e.g. temperature changes this will influence the external capacitance. the adc ticks will drift then slowly around zero values basically because of the mismatch of the compensation circuitry and the external capacitance. in case the average value of the ticks become higher than the positive noise threshold (configurable by user) or lower than the negative threshold (configurable by user) then the sx8635 will initiate a compensation procedure and find a new set of dcvs. compensation procedures can as well be initiated by the sx8635 on periodic intervals. even if the ticks remain within the positive and negative noise thresholds the compensation procedure will then estimate new sets of dcvs. finally the host can initiate a compensation procedure by using the i2c interface (in active or doze mode). this is e.g. required after the host changed the sensitivity of sensors.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 19 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.9 processing the first processing step of the raw ticks, coming out of the asi, is low pass filtering to obtain an estimation of the average capacitance: tick-ave (see figure 17). this slowly varying average is important in the detection of slowly changing environmental changes. ticks (raw) compensation dcv asi processing low pass tick-diff tick-ave processing gpio controller pwm led controller i2c spm figure 17 processing the difference of the tick average a nd the raw ticks, tick-dif f, is a good estimation of rapid changing input capacitances. the tick-diff, tick-ave and the configuration parameters in the spm are then processed and determines the sensor information, i2c registers status and pwm control. 3.10 configuration figure 18 shows the building blocks used for configuring the sx8635. figure 18 configuration the default configuration parameters of the sx8635 are stored in the quick start memory (qsm). this configuration data is setup to a very common application for the sx8635 with 6 buttons and a wheel. without any programming or host interaction the sx8635 will startup in the quick start application.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 20 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing the qsm settings are fixed and can not be changed by the user. in case the application needs different settings than the qsm settings then the sx8635 can be setup and/or programmed over the i2c interface. the configuration parameters of the sx8635 can be stored in the multiple time programmable (mtp) non volatile memory (nvm). the nvm contains all those parameters that are defined and stable for the application. examples are the number of sensors enabled, sensitivity, active and doze scan period. the details of these parameters are described in the next chapters. at power up the sx8635 checks if the nvm contains valid data. in that case the configuration parameter source becomes the nvm. if the nvm is empty or non-valid then the configuration source becomes the qsm. in the next step the sx8635 copies the configuration parameter source (qsm or nvm) into the shadow parameter memory (spm). the sx8635 is operational and uses the configuration parameters of the spm. during power down or reset event the spm loses all content. it will automatically be reloaded (from qsm or nvm) following power up or at the end of the reset event. the host will interface with the sx8635 through the i2c bus. the i2c of the sx8635 consists of 16 registers. some of these i2c registers are used to read the status and information of the button and the wheel. other i2c registers allow the host to take control of the sx8635. the host can e.g. decide to change the operation mode from active mode to doze mode or go into sleep (according to figure 8). two additional modes allow the host to have an access to the spm or indirect access to the nvm. these modes are required during development, can be used in real time or in-field programming. figure 19 shows the host spm mode. in this mode the host can decide to overwrite the spm. this is useful during the development phases of the application where the configuration parameters are not yet fully defined and as well during the operation of the application if some parameters need to be changed dynamically. figure 19 host spm mode the content of the spm remains valid as long as the sx8635 is powered and no reset is performed. after a power down or reset the host needs to re-write the spm if relevant for the application. figure 20 shows the host nvm mode. in this mode the host will be able to write the nvm.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 21 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing figure 20 host nvm mode the writing of the host towards the nvm is not done directly but done in 2 steps (figure 20). in the first step the host writes to the spm (as in figure 19). in the second step the host signals the sx8635 to copy the spm content into the nvm. initially the nvm memory is empty and it is required to determine a valid parameter set for the application. this can be done during the development phase using dedicated evaluation hardware representing the final application. this development phase uses probably initially the host spm mode which allows faster iterations. once the parameter set is determined this can be written to the nvm over the i2c using the 2 steps approach by the host or a dedicated programmer for large volumes production (as described in the paragraphs 6.6 and 6.7). 3.11 power management the sx8635 uses on-chip voltage regulators which are controlled by the on-chip microprocessor. the regulators need to be stabilized with an external capacitor between vana and ground and between vdig and ground (see table 5). both regulators are designed to only drive the sx8635 internal circuitry and must not be loaded externally. 3.12 clock circuitry the sx8635 has its own internal clock generation circuitry that does not require any external components. the clock circuitry is optimized for low power operation and is controlled by the on-chip microprocessor. the typical operating frequency of the oscillating core is 16.7mhz from which all other lower frequencies are derived. 3.13 i2c interface the i2c interface allows the communication between the host and the sx8635. the i2c slave implemented on the sx8635 is compliant with the standard (100kb/s) and fast mode (400kb/s) the default sx8635 i2c address equals 0b010 1011. a different i2c address can be programmed by the user in the nvm.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 22 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.14 reset the reset can be performed by 3 sources: - power up, - resetb pin, - software reset. 3.14.1 power up during power up the intb is kept low. once the power up sequence is terminated the intb is released autonomously. the sx8635 is then ready for operation. figure 21 power up vs. intb during the power on period the sx8635 stabilizes the internal regulators, rc clocks and the firmware initializes all registers. during the power up the sx8635 is not accessible and i2c communications are forbidden. as soon as the intb rises the sx8635 will be ready for i2c communication. 3.14.2 resetb when resetb is driven low the sx8635 will reset and start the power up sequence as soon as resetb is driven high or pulled high. in case the user does not require a hardware reset control pin then the resetb pin can be connected to vdd. figure 22 hardware reset
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 23 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.14.3 software reset to perform a software reset the host needs to write 0xde followed by 0x00 at the softreset register at address 0xb1. figure 23 software reset
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 24 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.15 interrupt 3.15.1 power up during power up the intb is kept low. once the power up sequence is terminated the intb is released autonomously. the sx8635 is then ready for operation. figure 24 power up vs. intb during the power on period the sx8635 stabilizes the internal regulators, rc clocks and the firmware initializes all registers. during the power up the sx8635 is not accessible and i2c communications are forbidden. as soon as the intb rises the sx8635 will be ready for i2c communication. 3.15.2 assertion intb is updated in active or doze mode once every scan period. the intb will be asserted: at the following events: ? if a button event occurred (touch or release if enabled). i2c registers capstatmsb and capstatlsb show the detailed status of the buttons, ? if a wheel event occurred (touch, release, rotate clockwise, rotate counter clockwise or position change). i2c registers capstatmsb, whlposmsb and whlposlsb show the detailed status of the wheel, ? if a gpi edge occurred (rising or falling if enabled). i2c register gpistat shows the detailed status of the gpi pins, ? when actually entering active or doze mode either through automatic wakeup or via host request (may be delayed by 1 scan period). i2c register compopmode shows the current operation mode, ? once compensation procedure is completed either through automatic trigger or via host request (may be delayed by 1 scan period), ? once spm write is effective (may be delayed by 1 scan period), ? once nvm burn procedure is completed (may be delayed by 1 scan period), ? during reset (power up, hardware resetb, software reset). 3.15.3 clearing intb is updated in active or doze mode once every scan period. the clearing of the intb is done as soon as the host performs a read to the irqsrc i2c register or reset is completed
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 25 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.15.4 example a typical example of the assertion and clearing of the intb and the i2c communication is shown in figure 25. figure 25 interrupt and i2c when a button is touched the sx8635 will assert the interrupt (1). the host will read the irqsrc information over the i2c and this clears the interrupt (2). if the finger releases the button the interrupt will be asserted (3). the host reading the irqsrc information will clear the interrupt (4). in case the host does not react to an interrupt this results in a missing touch. 3.16 general purpose input and outputs 3.16.1 introduction and definitions the sx8635 offers eight general purpose input and outputs (gpio) pins which can be configured in any of these modes: - gpi (general purpose input) - gpp (general purpose pwm) - gpo (general purpose output) each of these modes is described in more details in the following sections. the polarity of the gpp and gpo pins is defined as in figure below, driving an led as example. it has to be set accordingly in spm parameter gpiopolarity. figure 26 polarity definition, (a) normal, (b) inverted
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 26 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing the pwm blocks used in gpp and gpo modes are 8-bits based and clocked at 2mhz typ. hence offering 256 selectable pulse width values with a granularity of 128us typ. figure 27 pwm definition, (a) small pulse width, (b) large pulse width 3.16.2 gpi gpios configured as gpi will operate as digital inputs with standard low and high logic levels. optional pull-up/down and debounce can be enabled. each gpi is individually edge programmable for intb generation which will also exit sleep/doze mode if relevant. spm/i2c parameters applicable in gpi mode are listed in table below. please refer to the relevant spm/i2c parameters sections for more details. gpi gpiomode x gpiopullupdown x gpiointerrupt x spm gpiodebounce x irqsrc[4] x i2c gpistat x table 7 spm/i2c parameters applicable in gpi mode 3.16.3 gpp gpios configured as gpp will operate as pwm outputs directly controlled by the host. a typical application is led dimming. typical gpp operation is illustrated in figure below. figure 28 led control in gpp mode spm/i2c parameters applicable in gpp mode are listed in table below. please refer to the relevant spm/i2c parameters sections for more details.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 27 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing gpp gpiomode x gpiooutpwrup x 1 gpiopolarity x gpiointensityon x 1 gpiointensityoff x 1 spm gpiofunction x gpppinid x i2c gppintensity x 1 1 at power up, gppintensity of each gpp pin is initialized with gpiointensityon or gpiointensityoff depending on gpiooutpwrup corresponding bits value. table 8 spm/i2c parameters applicable in gpp mode 3.16.4 gpo gpios configured as gpo will operate as digital outputs which can generate both standard low/high logic levels and pwm low/high duty cycles levels. typical application is led on/off control. transitions between on and off states can be triggered either automatically in autolight mode or manually by the host. this is illustrated in figures below. figure 29 led control in gpo mode, autolight off figure 30 led control in gpo mode, autolight on (mapped to button) additionally these transitions can be configured to be done with or without fading following a logarithmic or linear function. this is illustrated in figures below. figure 31 gpo on transition (led fade in), normal polarity, (a) linear, (b) logarithmic
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 28 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing figure 32 gpo on transition (led fade in), inverted polarity, (a) linear, (b) logarithmic the fading out (e.g. after a button is released) is identical to the fading in but an additional off delay can be added before the fading starts (figure 33 and figure 34). figure 33 gpo off transition (led fade out), normal polarity, (a) linear, (b) logarithmic figure 34 gpo off transition (led fade out), inverted polarity, (a) linear, (b) logarithmic please note that standard high/low logic signals are just a specific case of gpo mode and can also be generated simply by setting inc/dec time to 0 (ie off) and programming intensity off/on to 0x00 and 0xff.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 29 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing spm/i2c parameters applicable in gpo mode are listed in table below. gpo gpiomode x gpiooutpwrup x 1 gpioautoligth x gpiopolarity x gpiointensityon x gpiointensityoff x gpiofunction x gpioincfactor x gpiodecfactor x gpioinctime x gpiodectime x spm gpiooffdelay x i2c gpoctrl x 2 1 only if autolight is off, else must be left to 0 (default value) 2 only if autolight is off, else ignored table 9 spm/i2c parameters applicable in gpo mode
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 30 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.16.5 intensity index vs pwm pulse width tables below are used to convert all intensity indexes parameters gpiointensityoff, gpiointensityon and gppintensity but also to generate fading in gpo mode during fading in(out), the index is automatically incremented(decremented) at every inc(dec)time x inc(dec)factor until it reaches the programmed gpiointensityon(off) value. index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log 0 0/0 32 33/5 64 65/12 96 97/26 128 129/48 160 161/81 192 193/125 224 225/184 1 2/0 33 34/5 65 66/13 97 98/27 129 130/49 161 162/82 193 194/127 225 226/186 2 3/0 34 35/5 66 67/13 98 99/27 130 131/50 162 163/83 194 195/129 226 227/188 3 4/0 35 36/5 67 68/13 99 100/28 131 132/51 163 164/84 195 196/130 227 228/190 4 5/0 36 37/5 68 69/14 100 101/29 132 133/52 164 165/86 196 197/132 228 229/192 5 6/2 37 38/6 69 70/14 101 102/29 133 134/53 165 166/87 197 198/133 229 230/194 6 7/2 38 39/6 70 71/14 102 103/30 134 135/54 166 167/88 198 199/135 230 231/197 7 8/2 39 40/6 71 72/15 103 104/30 135 136/55 167 168/89 199 200/137 231 232/199 8 9/2 40 41/6 72 73/15 104 105/31 136 137/55 168 169/91 200 201/139 232 233/201 9 10/2 41 42/6 73 74/15 105 106/32 137 138/56 169 170/92 201 202/140 233 234/203 10 11/2 42 43/7 74 75/16 106 107/32 138 139/57 170 171/93 202 203/142 234 235/205 11 12/2 43 44/7 75 76/16 107 108/33 139 140/58 171 172/95 203 204/144 235 236/208 12 13/2 44 45/7 76 77/16 108 109/33 140 141/59 172 173/96 204 205/146 236 237/210 13 14/2 45 46/7 77 78/17 109 110/34 141 142/60 173 174/97 205 206/147 237 238/212 14 15/3 46 47/7 78 79/17 110 111/35 142 143/61 174 175/99 206 207/149 238 239/215 15 16/3 47 48/8 79 80/18 111 112/35 143 144/62 175 176/100 207 208/151 239 240/217 16 17/3 48 49/8 80 81/18 112 113/36 144 145/63 176 177/101 208 209/153 240 241/219 17 18/3 49 50/8 81 82/19 113 114/37 145 146/64 177 178/103 209 210/155 241 242/221 18 19/3 50 51/8 82 83/19 114 115/38 146 147/65 178 179/104 210 211/156 242 243/224 19 20/3 51 52/9 83 84/20 115 116/38 147 148/66 179 180/106 211 212/158 243 244/226 20 21/3 52 53/9 84 85/20 116 117/39 148 149/67 180 181/107 212 213/160 244 245/229 21 22/3 53 54/9 85 86/21 117 118/40 149 150/68 181 182/109 213 214/162 245 246/231 22 23/3 54 55/9 86 87/21 118 119/40 150 151/69 182 183/110 214 215/164 246 247/233 23 24/4 55 56/10 87 88/22 119 120/41 151 152/71 183 184/111 215 216/166 247 248/236 24 25/4 56 57/10 88 89/22 120 121/42 152 153/72 184 185/113 216 217/168 248 249/238 25 26/4 57 58/10 89 90/23 121 122/43 153 154/73 185 186/114 217 218/170 249 250/241 26 27/4 58 59/10 90 91/23 122 123/44 154 155/74 186 187/116 218 219/172 250 251/243 27 28/4 59 60/11 91 92/24 123 124/44 155 156/75 187 188/117 219 220/174 251 252/246 28 29/4 60 61/11 92 93/24 124 125/45 156 157/76 188 189/119 220 221/176 252 253/248 29 30/4 61 62/11 93 94/25 125 126/46 157 158/77 189 190/121 221 222/178 253 254/251 30 31/4 62 63/12 94 95/25 126 127/47 158 159/78 190 191/122 222 223/180 254 255/253 31 32/5 63 64/12 95 96/26 127 128/48 159 160/80 191 192/124 223 224/182 255 256/256 table 10 intensity index vs. pwm pulse width (normal polarity) index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log index lin/log 0 256/256 32 224/251 64 192/244 96 160/230 128 128/208 160 96/175 192 64/131 224 32/72 1 255/256 33 223/251 65 191/243 97 159/229 129 127/207 161 95/174 193 63/129 225 31/70 2 254/256 34 222/251 66 190/243 98 158/229 130 126/206 162 94/173 194 62/127 226 30/68 3 253/256 35 221/251 67 189/243 99 157/228 131 125/205 163 93/172 195 61/126 227 29/66 4 252/256 36 220/251 68 188/242 100 156/227 132 124/204 164 92/170 196 60/124 228 28/64 5 251/254 37 219/250 69 187/242 101 155/227 133 123/203 165 91/169 197 59/123 229 27/62 6 250/254 38 218/250 70 186/242 102 154/226 134 122/202 166 90/168 198 58/121 230 26/59 7 249/254 39 217/250 71 185/241 103 153/226 135 121/201 167 89/167 199 57/119 231 25/57 8 248/254 40 216/250 72 184/241 104 152/225 136 120/201 168 88/165 200 56/117 232 24/55 9 247/254 41 215/250 73 183/241 105 151/224 137 119/200 169 87/164 201 55/116 233 23/53 10 246/254 42 214/249 74 182/240 106 150/224 138 118/199 170 86/163 202 54/114 234 22/50 11 245/254 43 213/249 75 181/240 107 149/223 139 117/198 171 85/161 203 53/112 235 21/48 12 244/254 44 212/249 76 180/240 108 148/223 140 116/197 172 84/160 204 52/110 236 20/46 13 243/254 45 211/249 77 179/239 109 147/222 141 115/196 173 83/159 205 51/109 237 19/44 14 242/253 46 210/249 78 178/239 110 146/221 142 114/195 174 82/157 206 50/107 238 18/41 15 241/253 47 209/248 79 177/238 111 145/221 143 113/194 175 81/156 207 49/105 239 17/39 16 240/253 48 208/248 80 176/238 112 144/220 144 112/193 176 80/155 208 48/103 240 16/37 17 239/253 49 207/248 81 175/237 113 143/219 145 111/192 177 79/153 209 47/101 241 15/35 18 238/253 50 206/248 82 174/237 114 142/218 146 110/191 178 78/152 210 46/100 242 14/32 19 237/253 51 205/247 83 173/236 115 141/218 147 109/190 179 77/150 211 45/98 243 13/30 20 236/253 52 204/247 84 172/236 116 140/217 148 108/189 180 76/149 212 44/96 244 12/27 21 235/253 53 203/247 85 171/235 117 139/216 149 107/188 181 75/147 213 43/94 245 11/25 22 234/253 54 202/247 86 170/235 118 138/216 150 106/187 182 74/146 214 42/92 246 10/23 23 233/252 55 201/246 87 169/234 119 137/215 151 105/185 183 73/145 215 41/90 247 9/20 24 232/252 56 200/246 88 168/234 120 136/214 152 104/184 184 72/143 216 40/88 248 8/18 25 231/252 57 199/246 89 167/233 121 135/213 153 103/183 185 71/142 217 39/86 249 7/15 26 230/252 58 198/246 90 166/233 122 134/212 154 102/182 186 70/140 218 38/84 250 6/13 27 229/252 59 197/245 91 165/232 123 133/212 155 101/181 187 69/139 219 37/82 251 5/10 28 228/252 60 196/245 92 164/232 124 132/211 156 100/180 188 68/137 220 36/80 252 4/8 29 227/252 61 195/245 93 163/231 125 131/210 157 99/179 189 67/135 221 35/78 253 3/5 30 226/252 62 194/244 94 162/231 126 130/209 158 98/178 190 66/134 222 34/76 254 2/3 31 225/251 63 193/244 95 161/230 127 129/208 159 97/176 191 65/132 223 33/74 255 0/0 table 11 intensity index vs. pwm pulse width (inverted polarity) recommended/default settings are inverted polarity (to take advantage from high sink current capability) and logarithmic mode (due to the non-linear response of the human eye).
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 31 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 3.17 smart wake up the sx8635 offers a smart wake up mechanism (up to 6 keys) which allows waking-up from the doze low power mode to the active mode in a secure/controlled way and not by any unintentional sensor activation. until the full correct wake-up sequence is entered, the sx8635 will remain in doze mode. any wrong key implies the whole sequence to be entered again. please note that each key touch must be followed by a release to be validated. hence if a proximity sensor and a touch button part of the wake-up sequence are interleaved on the pcb (ie if you cannot touch the button without triggering proximity detection) the smart wake up feature cannot be used since the proximity sensor is not ?released? before the buttons are touched. in this case the smart wakeup sequence must be turned off. the smart wake-up mechanism can also be disabled which implies that doze mode can hence only be exited from gpi or i2c command.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 32 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 4 p in descriptions 4.1 introduction this chapter describes briefly the pins of the sx8635, the way the pins are protected, if the pins are analog, digital, require pull up or pull down resistors and show control signals if these are available. 4.2 asi pins cap0, cap1, ..., cap11 the capacitance sensor pins (cap0, cap1, ..., cap11) are connected directly to the asi circuitry which converts the sensed capacitance into digital values. the capacitance sensor pins which are not used should be left open. the enabled cap pins need be connected directly to the sensors without significant resistance (typical below some ohms, connection vias are allowed). the capacitance sensor pins are protected to vana and ground. figure 35 shows the simplified diagram of the cap0, cap1, ..., cap11 pins. sx8635 sensor asi capx cap_inx vana note : x = 0, 1,2,?11 figure 35 simplified diagram of cap0, cap1, ..., cap11 cn, cp the cn and the cp pins are connected to the asi circuitry. a 1nf sampling capacitor between cp and cn needs to be placed as close as possible to the sx8635. the cn and cp are protected to vana and ground. figure 36 shows the simplified diagram of the cn and cp pins.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 33 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing sx8635 asi cp vana cn vana figure 36 simplified diagram of cn and cp 4.3 host interface pins the host interface consists of the interrupt pin intb, a reset pin resetb and the standard i2c pins: scl and sda. intb the intb pin is an open drain output that requires an external pull-up resistor (1..10 kohm). the intb pin is protected to vdd using dedicated devices. t he intb pin has diode protected to ground. figure 37 shows a simplified diagram of the intb pin. vdd r_int intb sx8635 int to host figure 37 simplified diagram of intb
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 34 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing scl the scl pin is a high impedance input pin. the scl pin is protected to vdd, using dedicated devices, in order to conform to standard i2c slave specifications. the scl pin has diode protected to ground. an external pull-up resistor (1..10 kohm) is required on this pin. figure 38 shows the simplified diagram of the scl pin. vdd r_scl scl sx8635 from host scl_in figure 38 simplified diagram of scl sda sda is an io pin that can be used as an open drain output pin with external pull-up resistor or as a high impedance input pin. the sda io pin is protected to vdd, using dedicated devices, in order to conform to standard i2c slave specifications. the sda pin has diode protected to ground. an external pull-up resistor (1..10 kohm) is required on this pin. figure 39 shows the simplified diagram of the sda pin. vdd r_sda sda sx8635 sda_out from/to host sda_in figure 39 simplified diagram of sda
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 35 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing resetb the resetb pin is a high impedance input pin. the resetb pin is protected to vdd using dedicated devices. the resetb pin has diode protected to ground. figure 40 shows the simplified diagram of the resetb pin controlled by the host. vdd r_resetb resetb sx8635 from host resetb_in figure 40 simplified diagram of resetb controlled by host figure 41 shows the resetb without host control. vdd resetb sx8635 resetb_in figure 41 simplified diagram of resetb without host control
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 36 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 4.4 power management pins the power management pins consist of the power, ground and regulator pins. vdd vdd is a power pin and is the main power supply for the sx8635. vdd has protection to ground. figure 42 shows a simplified diagram of the vdd pin. vdd sx8635 vdd figure 42 simplified diagram of vdd gnd the sx8635 has four ground pins all named gnd. these pins and the package center pad need to be connected to ground potential. the gnd has protection to vdd. figure 43 shows a simplified diagram of the gnd pin. vdd sx8635 gnd gnd figure 43 simplified diagram of gnd
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 37 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing vana, vdig the sx8635 has on-chip regulators for internal use (pins vana and vdig). vana and vdig have protection to vdd and to gnd. the output of the regulators needs to be de-coupled with a small 100nf capacitor to ground. figure 44 shows a simplified diagram of the vana and vdig pin. vdd sx8635 gnd vdig vdd gnd vana vana vdig cvdig cvana figure 44 simplified diagram of vana and vdig 4.5 general purpose io pins the sx8635 has 8 general purpose input/output (gpio) pins. all the gpio pins have protection to vdd and gnd. the gpio pins can be configured as gpi, gpo or gpp. figure 45 shows a simplified diagram of the gpio pins. figure 45 simplified diagram of gpio pins
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 38 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5 d etailed c onfiguration descriptions 5.1 introduction the sx8635 configuration parameters are taken from the qsm or the nvm and loaded into the spm as explained in the chapter ?functional description?. this chapter describes the details of the configuration parameters of the sx8635. . the spm is split by functionality into 6 configuration sections: ? general section: operating modes, ? capacitive sensors section: related to lower level capacitive sensing, ? button: related to the conversion from sensor data towards button information, ? wheel: related to the conversion from sensor data towards wheel information, ? mapping: related to mapping of button and wheel information towards wake-up and gpio pins, ? gpio: related to the setup of the gpio pins. the total address space of the spm and the nvm is 128 bytes, from address 0x00 to address 0x7f. two types of memory addresses, data are accessible to the user. ? ?application data?: application dependent data that need to be configured by the user. ? ?reserved?: data that need to be maintained by the user to the qsm default values (i.e. when nvm is burned). the table 12 and table 13 resume the complete spm address space and show the ?application data? and ?reserved? addresses, the functional split and the default values (loaded from the qsm).
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 39 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing address name default qsm value address name default qsm value 0x00 reserved 0xxx 0x20 reserved 0x00 0x01 reserved 0xxx 0x21 btncfg 0x30 0x02 reserved 0x19 0x22 btnavgthresh 0x50 0x03 reserved 0xxx 0x23 btncompnegthresh 0x50 0x04 i2caddress 0x2b 0x24 btncompnegcntmax 0x01 0x05 activescanperiod 0x02 0x25 btnhysteresis 0x0a 0x06 dozescanperiod 0x0d 0x26 button btnstuckattimeout 0x00 0x07 general passivetimer 0x00 0x27 whlcfg 0x00 0x08 reserved 0x00 0x28 whlstuckattimeout 0x00 0x09 capmodemisc 0x01 0x29 whlhysteresis 0x03 0x0a capmode11_8 0xff 0x2a reserved 0xff 0x0b capmode7_4 0xf5 0x2b whlnormmsb 0x01 0x0c capmode3_0 0x55 0x2c whlnormlsb 0x40 0x0d capsensitivity0_1 0x00 0x2d whlavgthresh 0x50 0x0e capsensitivity2_3 0x00 0x2e whlcompnegthresh 0x50 0x0f capsensitivity4_5 0x00 0x2f whlcompnegcntmax 0x01 0x10 capsensitivity6_7 0x00 0x30 whlrotatethresh 0x02 0x11 capsensitivity8_9 0x00 0x31 whloffset 0x00 0x12 capsensitivity10_11 0x00 0x32 wheel reserved 0x00 0x13 capthresh0 0xa0 0x33 mapwakeupsize 0x00 0x14 capthresh1 0xa0 0x34 mapwakeupvalue0 0x00 0x15 capthresh2 0xa0 0x35 mapwakeupvalue1 0x00 0x16 capthresh3 0xa0 0x36 mapwakeupvalue2 0x00 0x17 capthresh4 0xa0 0x37 mapautolight0 0xfe 0x18 capthresh5 0xa0 0x38 mapautolight1 0x54 0x19 capthresh6 0xa0 0x39 mapautolight2 0x32 0x1a capthresh7 0xa0 0x3a mapautolight3 0x10 0x1b capthresh8 0xa0 0x3b mapautolightgrp0msb 0x00 0x1c capthresh9 0xa0 0x3c mapautolightgrp0lsb 0x00 0x1d capthresh10 0xa0 0x3d mapautolightgrp1msb 0x00 0x1e capthresh11 0xa0 0x3e mapautolightgrp1lsb 0x00 0x1f capacitive sensors cappercomp 0x00 0x3f mapping mapsegmenthysteresis 0x02 table 12 spm address map: 0x00?0x3f note ? ?0xxx?: write protected data
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 40 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing address name default qsm value address name default qsm value 0x40 gpiomode7_4 0x00 0x60 gpiodectime1_0 0x44 0x41 gpiomode3_0 0x00 0x61 gpiooffdelay7_6 0x00 0x42 gpiooutpwrup 0x00 0x62 gpiooffdelay5_4 0x00 0x43 gpioautolight 0xff 0x63 gpiooffdelay3_2 0x00 0x44 gpiopolarity 0x00 0x64 gpiooffdelay1_0 0x00 0x45 gpiointensityon0 0xff 0x65 gpiopullupdown7_4 0x00 0x46 gpiointensityon1 0xff 0x66 gpiopullupdown3_0 0x00 0x47 gpiointensityon2 0xff 0x67 gpiointerrupt7_4 0x00 0x48 gpiointensityon3 0xff 0x68 gpiointerrupt3_0 0x00 0x49 gpiointensityon4 0xff 0x69 gpio gpiodebounce 0x00 0x4a gpiointensityon5 0xff 0x6a reserved 0x00 0x4b gpiointensityon6 0xff 0x6b reserved 0x00 0x4c gpiointensityon7 0xff 0x6c reserved 0x00 0x4d gpiointensityoff0 0x00 0x6d reserved 0x00 0x4e gpiointensityoff1 0x00 0x6e reserved 0x00 0x4f gpiointensityoff2 0x00 0x6f reserved 0x50 0x50 gpiointensityoff3 0x00 0x70 capproxenable 0x46 0x51 gpiointensityoff4 0x00 0x71 reserved 0x10 0x52 gpiointensityoff5 0x00 0x72 reserved 0x45 0x53 gpiointensityoff6 0x00 0x73 reserved 0x02 0x54 gpiointensityoff7 0x00 0x74 reserved 0xff 0x55 reserved 0xff 0x75 reserved 0xff 0x56 gpiofunction 0x00 0x76 reserved 0xff 0x57 gpioincfactor 0x00 0x77 reserved 0xd5 0x58 gpiodecfactor 0x00 0x78 reserved 0x55 0x59 gpioinctime7_6 0x00 0x79 reserved 0x55 0x5a gpioinctime5_4 0x00 0x7a reserved 0x7f 0x5b gpioinctime3_2 0x00 0x7b reserved 0x23 0x5c gpioinctime1_0 0x00 0x7c reserved 0x22 0x5d gpiodectime7_6 0x44 0x7d reserved 0x41 0x5e gpiodectime5_4 0x44 0x7e reserved 0xff 0x5f gpio gpiodectime3_2 0x44 0x7f spmcrc* 0x74 table 13 spm address map: 0x40?0x7f note* ? spmcrc: crc depending on spm content, updated in active or doze mode.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 41 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.2 general parameters general parameters address name bits description 7 reserved 0x04 i2caddress 6:0 defines the i2c address (default 0x2b). the i2c address will be active after a reset. 0x05 activescanperiod 7:0 active mode scan period (figure 7) 0x00: reserved 0x01: 15ms 0x02: 30ms (default) ? 0xff: 255 x 15ms 0x06 dozescanperiod 7:0 doze mode scan period (figure 7) 0x00: reserved 0x01: 15ms ? 0x0d: 195ms (default) ? 0xff: 255 x 15ms 0x07 passivetimer 7:0 passive timer on button and wheel information (figure 8) 0x00: off (default) 0x01: 1 second ? 0xff: 255 seconds table 14 general parameters
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 42 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.3 capacitive sensors parameters capacitive sensors parameters address name bits description 7:3 reserved 0x09 capmodemisc 2:0 individualsensitivity defines common sensitivity for all sensors or individual sensor sensitivity. 001: common settings (capsensitivity0_1[7:4]) 100: individual cap sensitivity settings (capsensitivityx_x) else : reserved 7:6 cap11 mode wheel 5:4 cap10 mode wheel 3:2 cap9 mode wheel 0x0a capmode11_8 1:0 cap8 mode wheel 7:6 cap7 mode wheel 5:4 cap6 mode wheel 3:2 cap5 mode button 0x0b capmode7_4 1:0 cap4 mode button 7:6 cap3 mode button 5:4 cap2 mode button 3:2 cap1 mode button 0x0c capmode3_0 1:0 cap0 mode defines the mode of the cap pin. 00: disabled 01: button 10: reserved 11: wheel default button 7:4 cap0 sensitivity - common sensitivity 0x0d capsensitivity0_1 3:0 cap1 sensitivity 7:4 cap2 sensitivity 0x0e capsensitivity2_3 3:0 cap3 sensitivity 7:4 cap4 sensitivity 0x0f capsensitivity4_5 3:0 cap5 sensitivity 7:4 cap6 sensitivity 0x10 capsensitivity6_7 3:0 cap7 sensitivity 7:4 cap8 sensitivity 0x11 capsensitivity8_9 3:0 cap9 sensitivity 7:4 cap10 sensitivity 0x12 capsensitivity10_11 3:0 cap11 sensitivity defines the sensitivity. 0x0: minimum (default) 0x7: maximum 0x8?0xf: reserved 0x13 capthresh0 7:0 cap0 touch threshold 0x14 capthresh1 7:0 cap1 touch threshold 0x15 capthresh2 7:0 cap2 touch threshold 0x16 capthresh3 7:0 cap3 touch threshold 0x17 capthresh4 7:0 cap4 touch threshold 0x18 capthresh5 7:0 cap5 touch threshold 0x19 capthresh6 7:0 cap6 touch threshold defines the touch threshold ticks. 0x00: 0, 0x01: 4, ? 0xa0: 640 (default), ? 0xff: 1020
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 43 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing capacitive sensors parameters address name bits description 0x1a capthresh7 7:0 cap7 touch threshold 0x1b capthresh8 7:0 cap8 touch threshold 0x1c capthresh9 7:0 cap9 touch threshold 0x1d capthresh10 7:0 cap10 touch threshold 0x1e capthresh11 7:0 cap11 touch threshold 7:4 reserved 0x1f cappercomp 3:0 periodic offset compensation defines the periodic offset compensation. 0x0: off (default) 0x1: 1 second 0x2: 2 seconds ? 0x7: 7 seconds 0x8: 16 seconds 0x9: 18 seconds ? 0xe: 28 seconds 0xf: 60 seconds 0x70 capproxenable 7:0 enables proximity sensing: 0x46: off 0x74: on table 15 capacitive sensors parameters capmodemisc by default the asi is using a common sensitivity for all capacitive sensors as in the usual case overlay material and sensors sizes are about equal. the register bits capsensitivity0_1[7:4] determine the sensitivity for all sensors in common sensitivity mode. it might be required to have a different, individual, sensitivity for each cap pin (for example proximity sensor set to max sensitivity while touch sensors are set to a lower one). this can be obtained by setting capmodemisc[2:0] to ?100? the individual sensitivity mode results in longer sensing periods than required in common sensitivity mode. capmode11_8, capmode7_4, capmode3_0: the cap pins can be set as a button, part of a wheel or disabled depending on the application. minimum default maximum buttons zero six eight wheel one (of four sensors) one (of six sensors) one (of twelve sensors) table 16 possible cap pin modes
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 44 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing buttons and disabled cap pins can be attributed freely (examples in figure 46). all buttons can be used for touch or proximity sensing, in the latter case register capproxenable needs to be set accordingly. figure 46 button examples disabled cap pins inside the wheel sensor attribution sequence are allowed, but cap buttons inside a wheel are not allowed (see example figure 47 with cap3 in a correct and a not allowed configuration). figure 47 button and wheel good/bad configuration examples (i) the physical order of the wheel sensors on the pcb should correspond to the incremental cap pin numbers. crossing wheel pcb sensors and cap number is not allowed. figure 48 shows a valid configuration and a wrong configuration where cap5 andcap6 are not routed correctly on the pcb.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 45 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing figure 48 button and wheel good/bad configuration examples (ii) the minimum position of the wheel is associated to the cap pin, attributed to the wheel, with the lowest index (in figure 48 this is cap2). the maximum position of the wheel is associated to the cap pin, attributed to the wheel, with the highest index (in figure 48 this is cap6). capsensitivity0_1, capsensitivity2_3, capsensitivity4_5, capsensitivity6_7, capsensitivity8_9, capsensitivity10_11, capproxenable: the sensitivity of the sensors can be set between 8 values. the higher the sensitivity is set the larger the value of the ticks will be. the minimum sensitivity can be used for thin overlay materials and large sensors, while the maximum sensitivity is required for thicker overlay and smaller sensors or proximity sensing. the required sensitivity needs to be determined during a product development phase. too low sensitivity settings result in missing touches. too high sensitivity settings will result in fault detection of fingers hovering above the touch sensors. the sensitivity is identical for all sensors in common sensitivity mode using the bits capsensitivity0_1[7:4] and can be set individually using register capmodemisc[2:0]. the maximum number of ticks that can be obtained depends on the selected sensitivity and if proximity sensing is enabled. this is illustrated in table 17. sensitivity approximate maximum tick level (capproxenable = off) approximate maximum tick level (capproxenable = on) 0 1000 4000 1 2000 8000 2 3000 12000 3 4000 16000 4 5000 20000 5 6000 24000 6 7000 28000 7 8000 32000 table 17 asi maximum tick levels
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 46 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing capthresh0, capthresh1, capthresh2, capthresh3, capthresh4, capthresh5, capthresh6, capthresh7, capthresh8, capthresh9, capthresh10, capthresh11: for each cap pin a threshold level can be set individually. the threshold levels are used by the sx8635 for making touch and release decisions on e.g. touch or no- touch. the details are explained in the sections for buttons and wheel. cappercomp: the sx8635 offers a periodic offset compensation for applications which are subject to substantial environmental changes. the periodic offset compensation is done at a defined interval and only if wheel and buttons are released.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 47 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.4 button parameters button parameters address name bits description 7:6 defines the buttons events reporting method. 00: multiple reporting of all touches and releases (default) 01: single reporting of the first button touch. next button touches and releases are ignored until release of the first button. 10: reserved 11: reserved 5:4 defines the buttons interrupt (for all buttons) 00 : interrupts masked 01 : triggered on touch 10 : triggered on release 11 : triggered on touch and release (default) 3:2 defines the number of samples at the scan period for determining a release 00: off, use incoming sample (default) 01: 2 samples debounce 10: 3 samples debounce 11: 4 samples debounce 0x21 btncfg 1:0 defines the number of samples at the scan period for determining a touch 00: off, use incoming sample (default) 01: 2 samples debounce 10: 3 samples debounce 11: 4 samples debounce 0x22 btnavgthresh 7:0 defines the positive threshold for disabling the processing filter averaging. if ticks are above the threshold, then the averaging is suspended 0x00: 0 0x01: 4 ? 0x50: 320 (default) ? 0xff: 1020 0x23 btncompnegthresh 7:0 defines the negative offset compensation threshold. 0x00: 0 0x01: 4 ? 0x50: 320 (default) ? 0xff: 1020 0x24 btncompnegcntmax 7:0 defines the number of ticks (below the negative offset compensation threshold) which will initiate an offset compensation. 0x00: reserved 0x01: 1 sample (default) ? 0xff-> samples 0x25 btnhysteresis 7:0 defines the button hysteresis corresponding to a percentage of the cap thresholds (defined in table 18). 0x00: 0% ? 0x0a: 10% (default) ? 0x64: 100% all buttons use the same hysteresis 0x26 btnstuckattimeout 7:0 defines the stuck at timeout. 0x00: off (default)
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 48 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing button parameters address name bits description 0x01: 1 second ? 0xff: 255 seconds table 18 button configuration parameters please note that proximity sensors are configured as buttons and operate exactly the same way as touch buttons. all the parameters and procedures described below apply similarly. a reliable button operation requires a coherent setting of the registers. figure 49 shows an example of a touch and a release. the ticks will vary slightly around the zero idle state. when the touch occurs the ticks will rise sharply. at the release of the button the ticks will go down rapidly and converge to the idle zero value. ticks_diff figure 49 t ouch and release example as soon as the ticks become larger than the cap thresholds (see registers of the previous section) plus the hysteresis (defined in register btnhysteresis) the debounce counter starts. in the example of figure 49 the touch is validated after 2 samples (btncfg [1:0] = 01). the release is detected immediately (btncfg [3:2] = 00) at the first sample which is below the threshold minus the hysteresis. btncfg the sx8635 can report all touches of multiple fingers or the sx8635 can be set to report only the first detected touch. in the later case all succeeding touches are ignored. the very first touch should be released before a next touch will be detected. the user can select to have the interrupt signal on touching a button, releasing a button or both in noisy environments it may be required to debounce the touch and release detection decision. in case the debounce is enabled the sx8635 will count up to the number of debounce samples btncfg [1:0], btncfg [3:2] before taking a touch or release decision. the sample period is identical to the scan period. btnavgthresh small environmental and system noise cause the ticks to vary slowly around the zero idle mode value.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 49 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing in case the ticks get slightly positive this is considered as normal operation. very large positive tick values indicate a valid touch. the averaging filter is disabled as soon as the average reaches the value defined by btnavgthresh. this mechanism avoids that a valid touch will be averaged and finally the tick difference becomes zero. in case three or more sensors reach the btnavgthresh value simultaneously then the sx8635 will start an offset compensation procedure. small environmental and system noise cause the ticks to vary slowly around the zero idle mode value. in case the ticks get slightly negative this is considered as normal operation. however large negative values will trigger an offset compensation phase and a new set of dcvs will be obtained. the decision to trigger a compensation phase based on negative ticks is determined by the value in the register btncompnegthresh and by the number of ticks below the negative thresholds defined in register btncompnegcntmax. an example is shown in figure 50. ticks_diff figure 50 negative ticks offset compensation trigger btncompnegthresh small negative ticks are considered as normal operation and will occur very often. larger negative ticks however need to be avoided and a convenient method is to trigger an offset compensation phase. the new set of dcv will assure the idle ticks will be close to zero again. a trade-off has to be found for the value of this register. a negative threshold too close to zero will trigger a compensation phase very often. a very negative threshold will never trigger. btncompnegcntmax as soon as the ticks get smaller than the negative threshold the negative counter starts to count. if the counter goes beyond the negative counter max then the offset compensation phase is triggered. the recommended value for this register is ?1? which means that the offset compensation starts on the first tick below the negative threshold. btnhysteresis the hysteresis percentage is identical for all buttons. a touch is detected if the ticks are getting larger as the value defined by: capthreshold + capthreshold * hysteresis. a release is detected if the ticks are getting smaller as the value defined by: capthreshold - capthreshold * hysteresis. btnstuckattimeout the stuckat timer can avoid sticky buttons.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 50 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing if the stuckat timer is set to one second then the touch of a finger will last only for one second and then a compensation will be performed and button hence considered released, even if the finger remains on the button for a longer time. after the actual finger release the button can be touched again and will be reported as usual. in case the stuckat timer is not required it can be set to zero.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 51 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.5 wheel parameters wheel parameters address name bits description 7:4 reserved 3:2 defines the number of samples at the scan period for determining a release 00: off, use incoming sample (default) 01: 2 samples debounce 10: 3 samples debounce 11: 4 samples debounce 0x27 whlcfg 1:0 defines the number of samples at the scan period for determining a touch 00: off, use incoming sample (default) 01: 2 samples debounce 10: 3 samples debounce 11: 4 samples debounce 0x28 whlstuckattimeout 7:0 defines the stuck at timeout. 0x00: off (default) 0x01: 1 second ? 0xff: 255 seconds 0x29 whlhysteresis 7:0 defines the wheel touch/release hysteresis. 0x00: 0 0x01: 4 ? 0x03: 12 (default) ? 0xff: 1020 0x2b whlnormmsb 7:0 wheel norm msb 0x2c whlnormlsb 7:0 wheel norm lsb defines the 16 bits wheel norm (default 0x0140) 0x2d whlavgthresh 7:0 defines the positive threshold for disabling the processing filter averaging. if ticks are above the threshold, then the averaging is suspended 0x00: 0 0x01: 4 ? 0x50: 320 (default) ? 0xff: 1020 0x2e whlcompnegthresh 7:0 defines the negative offset compensation threshold. 0x00: 0 0x01: 4 ? 0x50: 320 (default) ? 0xff: 1020 0x2f whlcompnegcntmax 7:0 defines the number of ticks (below the negative offset compensation threshold) which will initiate an offset compensation. 0x00: reserved 0x01: 1 sample (default) ? 0xff: 255 samples 0x30 whlrotatethresh 7:0 defines the threshold for detecting a rotate clockwise or counter clockwise. the threshold is a percentage of the maximum wheel position. 0x00: 0% ? 0x02: 2% (default)
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 52 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing wheel parameters address name bits description ? 0x64: 100% a succeeding position difference, at the scan period, above the threshold is considered as a rotate clockwise or counter clockwise. 0x31 whloffset 7:0 defines the angle (offset /256 * 360 degree) added to the wheel position in clockwise direction. 0x00: 0 (default) 0x01: 1/256 ? 0xff: 255/256 table 19 wheel parameters a reliable wheel operation requires a coherent setting of the registers. the pressure represents the finger touch on the sensors of the wheel and it used to determine if a wheel is touched or released. ? = ? = 1 0 )) ( ) ( _ ( n i i capthresh i diff ticks e whlpressur - n is the number of sensors, - a sensor with ticks smaller than the capthreshold is not taken into account for calculating the pressure in case the pressure equals zero the wheel status is released. in case the pressure is larger as the wheel hysteresis the wheel status is touched. figure 51 shows an example of a touch and a release. the ticks will vary slightly around the zero idle state. when the touch occurs the ticks will rise sharply. at the release of the wheel the ticks will go down rapidly and converge to the idle zero value. time 0 whlhysteresis = no-touch touch (touch debounce = 1) = touch (release debounce = 0) release capthreshold = scan events @ scan period whlhysteresis touch (touch debounce = 1) (release debounce = 0) figure 51 t ouch and release example
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 53 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing as soon as the ticks become larger than the cap thresholds (see registers of the previous section) plus the hysteresis (defined in register whlhysteresis) the debounce counter starts. in the example of figure 51 the touch is validated after 2 samples (whlcfg [1:0] = 01). the release is detected immediately (whlcfg [3:2] = 00) at the first sample with a pressure equal to zero. the position of a finger on a wheel is calculated by the centre of gravity algorithm. ? = ? = ? ? ? = 1 0 1 0 )) ( ) ( _ ( )) ( ) ( _ ( * 32 n i n i i capthresh i diff ticks i capthresh i diff ticks i whlnorm whlpos - n is the number of sensors, - a sensor with ticks smaller than the capthreshold is not taken into account for calculating the position, - whlnorm[15:0] is a 16 bit number determined by whlnormmsb[15:8] and whlnormlsb[7:0]. - whlpos is the wheel position (16 bits) which can be read by the host over the i2c registers whlposmsb and whlposlsb figure 52 wheel position figure 52 shows an example of a wheel composed of 6 sensors (cap0, cap1? cap5). the default wheel norm value 320 (whlnormmsb = 0x01, whlnormlsb = 0x40), is taken for the example. a touch on cap0 gives the wheel position: 0. a touch on cap1 gives the wheel position: 10. a touch on cap5 gives the wheel position: 50. if a touch occurs on cap0 and cap1 the centre of gravity algorithm will interpolate. assuming the touch is identically distributed on cap0 and cap1 then the position will be: 5 assuming the touch is identically distributed on cap1 and cap2 then the position will be: 15 assuming the touch is identically distributed on cap4 and cap5 then the position will be: 55 the minimum position of a wheel equals 0. the maximum position is obtained if the finger is very slightly on cap5 and heavily on cap0. the maximum position (whlposmax) is defined by: n whlnorm whlposmax = 32 with: n is the number of sensors in the wheel
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 54 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing whloffset the wheel offset adds an offset to the wheel position. therefore the wheel is divided in 256 segments. examples are shown in figure 53. if the offset equals zero then the calculated position remains unchanged. if the offset is set to 64, that means an angle offset of 64/256 * 360 degree, the position zero will be shifted 90. if the offset is set to 128, that means an angle offset of 128/256 * 360 degree, the position zero will be shifted 180. if the offset is set to 192, that means an angle offset of 192/256 * 360 degree, the position zero will be shifted 270. figure 53 wheel position zero with different offsets slow varying wheel ticks due to environmental changes are handled as buttons in the previous section. if the ticks pass below the wheel negative threshold for more than the compensation negative max counter then an offset compensation phase will be triggered. if the ticks pass above the wheel average positive threshold then the averaging filters will be held. a finger that moves very slowly over the wheel is not considered as a rotation. the status rotate clockwise and rotate counter clockwise will not be set. a finger that moves faster on the wheel will change the rotation status. a rotation is detected if the difference of the position for two succeeding samples at the scanning rate goes beyond the rotation threshold (whlrotatethresh). a large rotation threshold requires very rapid finger rotations, while a small rotation threshold detects more easily rotations but gets sensitive to noise variations as well. whlcfg in noisy environments it may be required to debounce the touch and release detection decision. in case the debounce is enabled the sx8647 will count up to the number of debounce samples whlcfg [1:0], whlcfg [3:2] before taking a touch or release decision. the sample period is identical to the scan period. whlavgthresh small environmental and system noise cause the ticks to vary slowly around the zero idle mode value. in case the ticks get slightly positive this is considered as normal operation. very large positive tick values indicate a valid touch. the averaging filter is disabled as soon as the average reaches the value defined by whlavgthresh. this mechanism avoids that a valid touch will be averaged and finally the tick difference becomes zero. in case three or more sensors reach the whlavgthresh value simultaneously then the sx8647 will start an offset compensation procedure. small environmental and system noise cause the ticks to vary slowly around the zero idle mode value.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 55 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing in case the ticks get slightly negative this is considered as normal operation. however large negative values will trigger an offset compensation phase and a new set of dcvs will be obtained. the decision to trigger a compensation phase based on negative ticks is determined by the value in the register whlcompnegthresh and by the number of ticks below the negative thresholds defined in register whlcompnegcntmax. an example is shown in figure 50. ticks_diff figure 54 negative ticks offset compensation trigger whlcompnegthresh small negative ticks are considered as normal operation and will occur very often. larger negative ticks however need to be avoided and a convenient method is to trigger an offset compensation phase. the new set of dcv will assure the idle ticks will be close to zero again. a trade-off has to be found for the value of this register. a negative threshold too close to zero will trigger a compensation phase very often. a very negative threshold will never trigger. whlcompnegcntmax as soon as the ticks get smaller than the negative threshold the negative counter starts to count. if the counter goes beyond the negative counter max then the offset compensation phase is triggered. the recommended value for this register is ?1? which means that the offset compensation starts on the first tick below the negative threshold. whlhysteresis in case the pressure is larger as the wheel hysteresis the wheel status is touched. whlstuckattimeout the stuckat timer can avoid sticky sensors. if the stuckat timer is set to one second then the touch of a finger will last only for one second and considered released, even if the finger remains on the wheel for a longer time. after the actual finger release the wheel can be touched again and will be reported as usual. in case the stuckat timer is not required it can be set to zero.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 56 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.6 mapping parameters mapping parameters address name bits description 7:3 reserved 0x33 mapwakeupsize 2:0 doze -> active wake up sequence size. 0: any sensor event (default) 1: key0 2: key0, key1 ? 6: key0, key1,?key5 7: no sensor event, only gpi or i2c cmd can exit doze mode each key must be followed by a release to be validated. any other sensor event before the release is ignored. any wrong key implies the whole sequence to be entered again. 7:4 key5 0x34 mapwakeupvalue0 3:0 key4 7:4 key3 0x35 mapwakeupvalue1 3:0 key2 7:4 key1 0x36 mapwakeupvalue2 3:0 key0 defines the sensor event associated to each key. 0x00: btn0 (default) 0x01: btn1 ? 0x0b: btn11 0x0c: wheel touch 0x0d: rotate counter clockwise 0x0e: rotate clockwise 0x0f: reserved 7:4 gpio[7] 0x37 mapautolight0 3:0 gpio[6] 7:4 gpio[5] 0x38 mapautolight1 3:0 gpio[4] 7:4 gpio[3] 0x39 mapautolight2 3:0 gpio[2] 7:4 gpio[1] 0x3a mapautolight3 3:0 gpio[0] defines the mapping between gpos (with autolight on) and sensor events. 0x00: btn0 (default) 0x01: btn1 ? 0x0b: btn11 0x0c: group0 as defined by mapautolightgrp0 0x0d: group1 as defined by mapautolightgrp1 0x0e: rotate counter clockwise 0x0f: rotate clockwise several gpos can be mapped to the same sensor event and will be controlled simultaneously. 7 reserved 6 segment 5 rotate clockwise 4 rotate counter clockwise 3 btn11 2 btn10 1 btn9 0x3b mapautolightgrp0msb 0 btn8 7 btn7 6 btn6 5 btn5 4 btn4 0x3c mapautolightgrp0lsb 3 btn3 defines group0 sensor events: 0: off (default) 1: on if any of the enabled sensor events occurs the group0 event will occur as well. all sensors events within the group can be independently set except wheel event segment which is exclusive (ie must be the only one enabled to be used)
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 57 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing mapping parameters address name bits description 2 btn2 1 btn1 0 btn0 7 reserved 6 wheel touch 5 rotate clockwise 4 rotate counter clockwise 3 btn11 2 btn10 1 btn9 0x3d mapautolightgrp1msb 0 btn8 7 btn7 6 btn6 5 btn5 4 btn4 3 btn3 2 btn2 1 btn1 0x3e mapautolightgrp1lsb 0 btn0 defines group1 sensor events: 0: off (default) 1: on if any of the enabled sensor events occurs the group0 event will occur as well. all sensors events within the group can be independently set. 0x3f mapsegmenthysteresis 7:0 defines the position hysteresis for detecting a segment change. the hysteresis is defined as a percentage of the maximum wheel position. 0x00: 0% ? 0x02: 2% (default) ? 0x64: 100% this hysteresis applies to all segments of the wheel. table 20 mapping parameters mapwakeupsize the number of keys defining the wakeup sequence can be set from 1 to 6. if the size is set to 0 then wakeup is done on any sensor event. if the size is set to 6 then wakeup is done only by gpi or an i2c command (may be required if proximity sensing is enable, see 3.17 for more details). mapwakeupvalue0, mapwakeupvalue1, mapwakeupvalue2 for the wakeup sequence btn2 -> btn5 -> btn6 ->btn0 the required register settings are: - mapwakeupsize set to 0x04, - key0 = 0x2 - key1 = 0x5
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 58 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing => mapwakeupvalue2 set to 0x52 - key2 = 0x6 - key3 = 0x0 => mapwakeupvalue2 set to 0x06 mapautolight0, mapautolight1, mapautolight2, mapautolight3 mapautolightgrp0msb, mapautolightgrp0lsb, mapautolightgrp1msb, mapautolightgrp1lsb these registers define the mapping between the gpo pins (with autolight on) and the sensor information which will control its on/off state. the mapping can be done to a specific sensor event but also on groups (in this case any sensor event in the group will control the gpo). table 21 defines for each selectable sensor event, which action will trigger corresponding gpo to switch on or off. mapautolight gpo on gpo off btnx touch release wheel touch touch release wheel rotation clock wise rotation clock wise rotation clock counter wise or release wheel rotation counter clock wise rotation counter clock wise rotation clock wise or release wheel segment segment touched segment released table 21 autolight mapping, sensor information examples: - if gpo[0] should change state accordingly to btn4 then mapautolight3[3:0] should be set to 0x04. - if gpo[0] should change state accordingly to btn0 or btn1 then group0 can be used as following: - mapautolight3[3:0] should be set to 0x0c (ie group0). - mapautolightgrp0 should be set to 0x0003 (ie btn0 or btn1) when the wheel segment event is mapped, the number of gpos mapped to it determines the number of wheel segments. the gpo with the lowest pin index is mapped on the segment with the smallest positions. e.g. if two gpos (e.g.gpo[0] and gpo[1]) are mapped to the wheel segment event then the wheel is split in two segments. gpo[0] will turn on for a touch on the wheel segment [0, whlposmax/2] and gpo[1] for a touch on the wheel segment [whlposmax/2, whlposmax].
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 59 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 5.7 gpio parameters gpio parameters address name bits description 7:6 gpio[7] mode 5:4 gpio[6] mode 3:2 gpio[5] mode 0x40 gpiomode7_4 1:0 gpio[4] mode 7:6 gpio[3] mode 5:4 gpio[2] mode 3:2 gpio[1] mode 0x41 gpiomode3_0 1:0 gpio[0] mode defines the gpio mode. 00: gpo (default) 01: gpp 10: gpi 11: reserved gpio[7] output value at power up gpio[6] output value at power up gpio[5] output value at power up gpio[4] output value at power up gpio[3] output value at power up gpio[2] output value at power up gpio[1] output value at power up 0x42 gpiooutpwrup 7:0 gpio[0] output value at power up defines the values of gpo and gpp pins after power up ie default values of i2c parameters gpoctrl and gppintensity respectively. 0: off(gpo) / intensityoff (gpp) (default) 1: on (gpo) / intensityon (gpp) bits corresponding to gpo pins with autolight on should be left to 0. before being actually initialized gpios are set as inputs with pull up. gpio[7] autolight gpio[6] autolight gpio[5] autolight gpio[4] autolight gpio[3] autolight gpio[2] autolight gpio[1] autolight 0x43 gpioautolight 7:0 gpio[0] autolight enables autolight in gpo mode 0 : off 1 : on (default) gpio[7] output polarity gpio[6] output polarity gpio[5] output polarity gpio[4] output polarity gpio[3] output polarity gpio[2] output polarity gpio[1] output polarity 0x44 gpiopolarity 7:0 gpio[0] output polarity defines the polarity of the gpo and gpp pins. 0: inverted (default) 1: normal 0x45 gpiointensityon0 0x46 gpiointensityon1 0x47 gpiointensityon2 7:0 on intensity index defines the on intensity index 0x00: 0 0x01: 1
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 60 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing gpio parameters address name bits description 0x48 gpiointensityon3 0x49 gpiointensityon4 0x4a gpiointensityon5 0x4b gpiointensityon6 0x4c gpiointensityon7 ? 0xff: 255 (default) 0x4d gpiointensityoff0 0x4e gpiointensityoff1 0x4f gpiointensityoff2 0x50 gpiointensityoff3 0x51 gpiointensityoff4 0x52 gpiointensityoff5 0x53 gpiointensityoff6 0x54 gpiointensityoff7 7:0 off intensity index defines the off intensity index 0x00: 0 (default) 0x01: 1 ? 0xff: 255 gpio[7] function gpio[6] function gpio[5] function gpio[4] function gpio[3] function gpio[2] function gpio[1] function 0x56 gpiofunction 7:0 gpio[0] function defines the intensity index vs pwm pulse width function. 0: logarithmic (default) 1: linear gpio[7] fading increment factor gpio[6] fading increment factor gpio[5] fading increment factor gpio[4] fading increment factor gpio[3] fading increment factor gpio[2] fading increment factor gpio[1] fading increment factor 0x57 gpioincfactor 7:0 gpio[0] fading increment factor defines the fading increment factor. 0: 1, intensity index incremented every increment time (default) 1: 16, intensity index incremented every 16 increment times gpio[7] fading decrement factor gpio[6] fading decrement factor gpio[5] fading decrement factor gpio[4] fading decrement factor gpio[3] fading decrement factor gpio[2] fading decrement factor gpio[1] fading decrement factor 0x58 gpiodecfactor 7:0 gpio[0] fading decrement factor defines the fading decrement factor. 0: 1, intensity index decremented every decrement time (default) 1: 16, intensity index decremented every 16 decrement times 0x59 gpioinctime7_6 7:4 gpio[7] fading increment time defines the fading increment time.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 61 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing gpio parameters address name bits description 3:0 gpio[6] fading increment time 7:4 gpio[5] fading increment time 0x5a gpioinctime5_4 3:0 gpio[4] fading increment time 7:4 gpio[3] fading increment time 0x5b gpioinctime3_2 3:0 gpio[2] fading increment time 7:4 gpio[1] fading increment time 0x5c gpioinctime1_0 3:0 gpio[0] fading increment time 0x0: off (default) 0x1: 0.5ms 0x2: 1ms ? 0xf: 7.5ms the total fading in time will be: gpioinctime*gpioincfactor* (gpiointensityon ? gpiointensityoff) 7:4 gpio[7] fading decrement time 0x5d gpiodectime7_6 3:0 gpio[6] fading decrement time 7:4 gpio[5] fading decrement time 0x5e gpiodectime5_4 3:0 gpio[4] fading decrement time 7:4 gpio[3] fading decrement time 0x5f gpiodectime3_2 3:0 gpio[2] fading decrement time 7:4 gpio[1] fading decrement time 0x60 gpiodectime1_0 3:0 gpio[0] fading decrement time defines the fading decrement time. 0x0: off 0x1: 0.5ms 0x2: 1ms ? 0x4: 2.0ms (default) ? 0xf: 7.5ms the total fading out time will be: gpiodectime*gpiodecfactor* (gpiointensityon ? gpiointensityoff) 7:4 gpio[7] off delay 0x61 gpiooffdelay7_6 3:0 gpio[6] off delay 7:4 gpio[5] off delay 0x62 gpiooffdelay5_4 3:0 gpio[4] off delay 7:4 gpio[3] off delay 0x63 gpiooffdelay3_2 3:0 gpio[2] off delay 7:4 gpio[1] off delay 0x64 gpiooffdelay1_0 3:0 gpio[0] off delay defines the delay after gpo off trigger before fading out starts. 0x0: off (default) 0x1: 200ms 0x2: 400ms ? 0xf: 3000ms 7:6 gpio[7] pullup/down 5:4 gpio[6] pullup/down 3:2 gpio[5] pullup/down 0x65 gpiopullupdown7_4 1:0 gpio[4] pullup/down 7:6 gpio[3] pullup/down 5:4 gpio[2] pullup/down 3:2 gpio[1] pullup/down 0x66 gpiopullupdown3_0 1:0 gpio[0] pullup/down enables pullup/down resistors for gpi pins. 00 : none (default) 01 : pullup 10 : pulldown 11 : reserved 7:6 gpi[7] interrupt 5:4 gpi[6] interrupt 3:2 gpi[5] interrupt 0x67 gpiointerrupt7_4 1:0 gpi[4] interrupt 7:6 gpi[3] interrupt 5:4 gpi[2] interrupt 0x68 gpiointerrupt3_0 3:2 gpi[1] interrupt defines the gpi edge which will trigger intb falling edge and exit sleep/doze modes if relevant. 00 : none (default) 01 : rising 10 : falling 11 : both
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 62 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing gpio parameters address name bits description 1:0 gpi[0] interrupt gpi[7] debounce gpi[6] debounce gpi[5] debounce gpi[4] debounce gpi[3] debounce gpi[2] debounce gpi[1] debounce 0x69 gpiodebounce 7:0 gpi[0] debounce enables the gpi debounce (done on 10 consecutive samples at 1ms). 0 : off (default) 1 : on table 22 gpio parameters table 23 resumes the applicable spm and i2c parameters for each gpio mode. gpi gpp gpo gpiomode x x x gpiooutpwrup x 1 x 2 gpioautoligth x gpiopolarity x x gpiointensityon x 1 x gpiointensityoff x 1 x gpiofunction x x gpioincfactor x gpiodecfactor x gpioinctime x gpiodectime x gpiooffdelay x gpiopullupdown x gpiointerrupt x spm gpiodebounce x irqsrc[4] x gpistat x gpoctrl x 3 gpppinid x i2c gppintensity x 1 1 at power up, gppintensity of each gpp pin is initialized with gpiointensityon or gpiointensityoff depending on gpiooutpwrup corresponding bits value. 2 only if autolight is off, else must be left to 0 (default value) 3 only if autolight is off, else ignored table 23 applicable spm/i2c parameters vs. gpio mode
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 63 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6 i2c i nterface the i2c implemented on the sx8635 is compliant with: - standard (100kb/s), fast mode (400kb/s) - slave mode - 7 bit address (default 0x2b). the default address can be changed in the nvm at address 0x04. the host can use the i2c to read and write data at any time. the effective changes will be applied at the next processing phase (section 3.3). three types of registers are considered: - status (read). these registers give information about the status of the capacitive buttons, wheel, gpis, operation modes etc? - control (read/write). these registers control the soft reset, operating modes, gpios and offset compensation. - spm gateway (read/write). these registers are used for the communication between host and the spm. the spm gateway communication is done typically at power up and is not supposed to be changed when the application is running. the spm needs to be re-stored each time the sx8635 is powered down. the spm can be stored permanently in the nvm memory of the sx8635. the spm gateway communication over the i2c at power up is then not required. the i2c will be able to read and write from a start address and then perform read or writes sequentially, and the address increments automatically. the supported i2c access formats are described in the next sections. 6.1 i2c write the format of the i2c write is given in figure 55. after the start condition [s], the slave address (sa) is sent, followed by an eighth bit (?0?) indicating a write. the sx8635 then acknowledges [a] that it is being addressed, and the master sends an 8 bit data byte consisting of the sx8635 register address (ra). the slave acknowledges [a] and the master sends the appropriate 8 bit data byte (wd0). again the slave acknowledges [a]. in case the master needs to write more data, a succeeding 8 bit data byte will follow (wd1), acknowledged by the slave [a]. this sequence will be repeated until the master terminates the transfer with the stop condition [p]. figure 55 i2c write the register address is incremented automatically when successive register data (wd1...wdn) is supplied by the master.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 64 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.2 i2c read the format of the i2c read is given in figure 56. after the start condition [s], the slave address (sa) is sent, followed by an eighth bit (?0?) indicating a write. the sx8635 then acknowledges [a] that it is being addressed, and the master responds with an 8 bit data consisting of the register address (ra). the slave acknowledges [a] and the master sends the repeated start condition [sr]. once again, the slave address (sa) is sent, followed by an eighth bit (?1?) indicating a read. the sx8635 responds with an acknowledge [a] and the read data byte (rd0). if the master needs to read more data it will acknowledge [a] and the sx8635 will send the next read byte (rd1). this sequence can be repeated until the master terminates with a nack [n] followed by a stop [p]. figure 56 i2c read
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 65 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.3 i2c registers overview address name r/w description 0x00 irqsrc read interrupt source 0x01 capstatmsb read wheel/button status msb 0x02 capstatlsb read button status lsb 0x03 whlposmsb read wheel position msb 0x04 whlposlsb read wheel position lsb 0x05 reserved 0x06 reserved 0x07 gpistat read gpi status 0x08 spmstat read spm status 0x09 compopmode read/write compensation and operating mode 0x0a gpoctrl read/write gpo control 0x0b gpppinid read/write gpp pin selection 0x0c gppintensity read/write gpp intensity 0x0d spmcfg read/write spm configuration 0x0e spmbaseaddr read/write spm base address 0x0f reserved 0xac spmkeymsb read/write spm key msb 0xad spmkeylsb read/write spm key lsb 0xb1 softreset read/write software reset table 24 i2c registers overview
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 66 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.4 status registers address name bits description 7 reserved 6 nvm burn interrupt flag 5 spm write interrupt flag 4 gpi interrupt flag 3 wheel interrupt flag 2 buttons interrupt flag 1 compensation interrupt flag 0x00 irqsrc 0 operating mode interrupt flag interrupt source flags 0: inactive (default) 1: active intb goes low if any of these bits is set. more than one bit can be set. reading irqsrc clears it together with intb. table 25 interrupt source the delay between the actual event and the flags indicating the interrupt source may be one scan period. irqsrc[6] is set once nvm burn procedure is completed. irqsrc[5] is set once spm write is effective. irqsrc[4] is set if a gpi edge as programmed in gpiointerrupt occurred. gpistat shows the detailed status of the gpi pins. irqsrc[3] is set if a wheel event occurred (touch, release, rotation clockwise, rotation counter clockwise or position change) . capstatmsb, whlposmsb and whlposlsb show the detailed status of the wheel. irqsrc[2] is set if a button event occurred (touch or release if enabled). capstatmsb and capstatlsb show the detailed status of the buttons. irqsrc[1] is set once compensation procedure is completed either through automatic trigger or via host request. irqsrc[0] is set when actually entering active or doze mode either through automatic wakeup or via host request. compopmode shows the current operation mode.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 67 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing address name bits description 7 reserved 6 wheel rotation clockwise 5 wheel rotation counter clockwise wheel rotation status 0: no rotation (default) 1: rotation the status remains high as long as the wheel is touched and no opposite rotation has occurred. 4 wheel touched wheel touch status 0: released (default) 1: touched 3 button 11 touched 2 button 10 touched 1 button 9 touched 0x01 capstatmsb 0 button 8 touched 7 button 7 touched 6 button 6 touched 5 button 5 touched 4 button 4 touched 3 button 3 touched 2 button 2 touched 1 button 1 touched 0x02 capstatlsb 0 button 0 touched button touch status 0: released (default) 1: touched table 26 wheel, button status msb/lsb address name bits description 0x03 whlposmsb 7:0 wheel position[15:8] 0x04 whlposlsb 7:0 wheel position[7:0] shows the current (touched) or last (released) wheel position[15:0] unsigned (default 0x00) table 27 wheel position msb/lsb address name bits description 0x07 gpistat 7:0 gpi[7:0] status status of each individual gpi pin 0: low 1: high bits of non-gpi pins are set to 0. table 28 i2c gpi status
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 68 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing address name bits description 7:4 reserved 3 nvmvalid indicates if the current nvm is valid. 0: no ? qsm is used 1: yes ? nvm is used 0x08 spmstat 2:0 nvmcount indicates the number of times nvm has been burned: 0: none ? qsm is used (default) 1: once ? nvm is used if nvmvalid = 1, else qsm. 2: twice ? nvm is used if nvmvalid = 1, else qsm. 3: three times ? nvm is used if nvmvalid = 1, else qsm. 4: more than three times ? qsm is used table 29 i2c spm status
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 69 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.5 control registers address name bits description 7:3 reserved*, write only ?00000? 2 compensation indicates/triggers compensation procedure 0: compensation completed (default) 1: read -> compensation running ; write -> trigger compensation 0x09 compopmode 1:0 operating mode indicates/programs** operating mode 00: active mode (default) 01: doze mode 10: sleep mode 11: reserved table 30 i2c compensation, operation modes * the reading of these reserved bits will return varying values. ** after the operating mode change (active/doze) the host should wait for intb or 300ms before performing any i2c read access. address name bits description 0x0a gpoctrl 7:0 gpoctrl[7:0] triggers on/off state of gpos when autolight is off 0: off (ie go to intensityoff) 1: on (ie go to intensityon) default is set by spm parameter gpiooutpwrup bits of non-gpo pins are ignored. table 31 i2c gpo control
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 70 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing address name bits description 7:3 reserved, write only ?00000? 0x0b gpppinid 2:0 gpp pin identifier defines the gpp pin to which the gppintensity is assigned for the following read/write operations 0x0 = gpp0 (default) 0x1 = gpp1 ... 0x7 = gpp7 gppx refers to pin gpiox configured as gpp table 32 i2c gpp pin identifier address name bits description 0x0c gppintensity 7:0 defines the intensity index of the gpp pin selected in gpppinid 0x00: 0 0x01: 1 ? 0xff: 255 reading returns the intensity index of the gpp pin selected in gpppinid. default value is intensityon or intensityoff depending on gpiooutpwrup. table 33 i2c gpp intensity address name bits description 0xb1 softreset 7:0 writing 0xde followed by 0x00 will reset the chip. table 34 i2c soft reset
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 71 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.6 spm gateway registers the sx8635 i2c interface offers two registers for exchanging the spm data with the host. ? spmcfg ? spmbaseaddr address name bits description 7:6 00: reserved 5:4 enables i2c spm mode 00: off (default) 01: on 10: reserved 11: reserved 3 defines r/w direction of spm 0: spm write access (default) 1: spm read access 0x0d spmcfg 2:0 000: reserved table 35 spm access configuration address name bits description 0x0e spmbaseaddr 7:0 spm base address (modulo 8). the lowest address is 0x00 (default). the highest address is 0x78. table 36 spm base address the exchange of data, read and write, between the host and the spm is always done in bursts of eight bytes. the base address of each burst of eight bytes is a modulo 8 number, starting at 0x00 and ending at 0x78. the registers spmkeymsb and spmkeylsb are required for nvm programming as described in section 6.7. address name bits description 0xac spmkeymsb 7:0 spm to nvm burn key msb unlock requires writing data: 0x62 table 37 spm key msb address name bits description 0xad spmkeylsb 7:0 spm to nvm burn key lsb unlock requires writing data: 0x9d table 38 spm key lsb
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 72 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.6.1 spm write sequence the spm write can be done in any mode (active, doze, sleep). writing the spm in sleep is useful to avoid potential transient behaviors. the spm must always be written in blocks of 8 bytes. the sequence is described below: 1. set the i2c in spm mode by writing ?01? to spmcfg[5:4] and spm write access by writing ?0? to spmcfg[3]. 2. write the spm base address to spmbaseaddr (the base address needs to be a value modulo 8). 3. write the eight consecutive bytes to i2c address 0, 1, 2, ?7 4. terminate by writing ?000? to spmcfg[5:3]. figure 57: spm write sequence the complete spm can be written by repeating 16 times the cycles shown in figure 57 using base addresses 0x00, 0x08, 0x10, ?, 0x70, 0x78. between each sequence the host should wait for intb (active/doze) or 30ms in sleep. in active or doze mode, once the spm write sequence is actually applied, the intb pin will be asserted and irqsrc[5] set. in sleep mode the spm write can be actually applied with a delay of 30ms. the host clears the interrupt and irqsrc[5] by reading the irqsrc register.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 73 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.6.2 spm read sequence the spm read can be done in any mode (active, doze, sleep). the spm must always be read in blocks of 8 bytes. the sequence is described below: 1. set the i2c in spm mode by writing ?01? to spmcfg[5:4] and spm read access by writing ?1? to spmcfg[3]. 2. write the spm base address to spmbaseaddr (the base address needs to be a value modulo 8). 3. read the eight consecutive bytes from i2c address 0, 1, 2, ?7 4. terminate by writing ?000? to spmcfg[5:3]. figure 58: spm read sequence the complete spm can be read by repeating 16 times the cycles shown in figure 58 using base addresses 0x00, 0x08, 0x10, ?, 0x70, 0x78.
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 74 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 6.7 nvm burn the content of the spm can be copied permanently (burned) into the nvm to be used as the new default parameters. the burning of the nvm can be done up to three times and must be done only when the spm is completely written with the desired data. the nvm burn must be done in active or doze mode. once the nvm burn process is terminated irqsrc[6] will be set and intb asserted. after a reset the burned nvm parameters will be copied into the spm. the number of times the nvm has been burned can be monitored by reading nvmcount from the i2c register spmstat[2:0]. figure 59 simplified diagram nvmcount figure 59 shows the simplified diagram of the nvm counter. the sx8635 is delivered with empty nvm and nvmcount set to zero. the spm points to the qsm. each nvm burn will increase the nvmcount. at the fourth nvm burn the sx8635 switches definitely to the qsm. the burning of the spm into the nvm is done by executing a special sequence of four i2c commands. 1. write the data 0x62 to the i2c register i2ckeymsb. terminate the i2c write by a stop. 2. write the data 0x9d to the i2c register i2ckeylsb. terminate the i2c write by a stop. 3. write the data 0xa5 to the i2c register i2cspmbaseaddr. terminate the i2c write by a stop. 4. write the data 0x5a to the i2c register i2cspmbaseaddr. terminate the i2c write by a stop. this is illustrated in figure 60. s sa 0 0x0e a 0xa5 a p a s : start condition sa : slave address a : slave acknowledge p : stop condition from master to slave from slave to master s sa 0 0x0e a 0x5a a p a 3) 4) s sa 0 0xac a 0x62 a p a s sa 0 0xad a 0x9d a p a 1) 2) figure 60: nvm burn procedure
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 75 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 7 a pplication i nformation 7.1 typical application schematic figure 61 typical application
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 76 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 7.2 example of touch+proximity module 7.2.1 overview to demonstrate the proximity sensing feature of the sx863x family, a module has been designed and is illustrated in figure below. figure 62 touch+proximity module overview the touch button controller is running in stand-alone (ie without host) and uses the autolight mode to turn leds on/off accordingly to the touch buttons and proximity sensing status. 7.2.2 operation module operation can be seen as 5 steps which are described in figure below 1. no finger => no proximity detected => all leds off 2. finger approaches => proximity detected => blue leds turned on 3. button touch => orange led turned on (blue+orange = pink) 4. button release => orange led turned off 5. finger removed => no proximity detected => blue leds turned off figure 63 touch+proximity module operation notes: - for better user experience, bicolor leds have been used here but one could decide to design a module with normal unicolor leds. in this case, step 3 above would simply consist in a higher (blue) intensity for the led of the button touched. - for obvious demonstration purposes the overlay used here is transparent but in typical applications (tv, monitor, set-top box, etc) the overlay would be opaque enough so that when leds are off (ie no proximity detected) the pcb is not visible to the user. 7.2.3 performance the proximity sensing distance of detection has been measured in these conditions: - capproxenable = on
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 77 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing - capsensitivity = 7 (max) - capthreshold = 300 - board main supplied and placed vertically ie same orientation as hand/finger - finger pointing center button the results obtained are provided in table below: distance of detection palm ~10cm finger (natural position) ~6cm orthogonal finger (worst case) ~4cm table 39 proximity sensing distance of detection 7.2.4 schematics figure 64 touch+proximity module schematics
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 78 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 7.2.5 layout figure 65 touch+proximity module layout - top figure 66 touch+proximity module layout - mid1 figure 67 touch+proximity module layout - mid2 figure 68 touch+proximity module layout - bottom
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 79 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 8 r eferences [1] capacitive touch sensing layout guidelines on www.semtech.com
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 80 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing 9 p ackaging i nformation 9.1 package outline drawing sx8635 is assembled in a mlpq-w32 package as shown in figure 69. figure 69 package outline drawing 9.2 land pattern the land pattern of mlpq-w32 package, 5 mm x 5 mm is shown in figure 70. figure 70 land pattern
advanced communications & sensing datasheet revision 7_8, october 10 ? 2010 semtech corp. www.semtech.com 81 sx8635 low power, capacitive button and wheel touch controller (12 sensors) with enhanced led drivers and proximity sensing contact information ? semtech 2010 all rights reserved. reproduction in whole or in part is prohibited without the prior written consent of the copyright owner. the information presented in this document does not form part of any quotation or contract, is believed to be accurate and reliable and may be changed without notice. no liability will be accepted by the publisher for any consequence of its use. publication thereof does not convey nor imply any license under patent or other industrial or intellectual property rights. semtech assumes no responsibility or liability whatsoever for any failure or unexpected operation resulting from misuse, neglect improper installation, repair or improper handling or unusual physical or electrical stress including, but not limited to, exposure to parameters beyond the specified maximum ratings or operation outside the specified range. semtech products are not designed, intende d, authorized or warranted to be suitable for use in life-support applications, devices or systems or other critical applications. inclusion of semtech products in such applications is understood to be undertaken solely at the customer?s own risk. should a customer purchase or use semtech products for any such unauthorized application, the customer shall indemnify and hold semtech and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs damages and attorney fees which could arise. notice: all referenced brands, product names, service names and trademarks are the property of their respective owners. semtech corporation advanced communications and sensing products division 200 flynn road, camarillo, ca 93012 phone: (805) 498-2111 fax: (805) 498-3804


▲Up To Search▲   

 
Price & Availability of SX8635I05AWLTRT

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X